PageSourceSearch

https://www.karatetsu.com/js/2013/bookmark.js

js karatetsu.com collected 2026-10-02 07:17:05 UTC 3,541 bytes, 116 lines download raw bytes

1// --------------------------------------------------------------------
2// Author  : mashimonator
3// Create  : 2009/01/08
4// Update  : 2009/01/14
5// Description : ブラウザ判定をして、対応していればお気に入りに登録する
6// --------------------------------------------------------------------
7
8function bookmark(){
9
10	var userSystem = new browserInfo.get(navigator.userAgent);
11	var name = document.title;
12	var url = window.location.href;
13
14	var browser = userSystem.browserShortName;
15	var version = parseFloat(userSystem.browserVersion);
16
17	if ( browser == "ie" && version >= 4 ) {
18		// IE4 以上
19		window.external.AddFavorite(url,name);
20	} else if ( browser == "ff" ) {
21		// Firefox
22		window.sidebar.addPanel(name,url,'');
23	} else {
24		// その他
25		alert('このウィンドウを閉じたあと\n「Ctrl(command)」キー+「D」でお気に入りに追加♪');
26		return;
27	}
28
29}
30
31var browserInfo = {
32
33	get : function() {
34
35		var key, index, keyIndex, keyIndexEnd, versionKey, i, j;
36		var uaString = navigator.userAgent.toUpperCase();
37
38		this.browserLongName = "---";
39		this.browserShortName = "---";
40		this.browserVersion = "---";
41
42		var BROWSERS = new Object();
43		BROWSERS['MZ'] = new setBrowser('Mozilla','mz','GECKO');
44		BROWSERS['IE'] = new setBrowser('Internet Explorer','ie','MSIE');
45		BROWSERS['AO'] = new setBrowser('AOL','ao','AOL');
46		BROWSERS['SF'] = new setBrowser('Safari','sf','SAFARI');
47		BROWSERS['OP'] = new setBrowser('Opera','op','OPERA');
48		BROWSERS['OW'] = new setBrowser('OmniWeb','ow','OMNIWEB');
49		BROWSERS['IC'] = new setBrowser('iCab','ic','ICAB');
50		BROWSERS['NS'] = new setBrowser('Netscape','ns','NETSCAPE,NETSCAPE6');
51		BROWSERS['NN'] = new setBrowser('Netscape Navigator','nn','MOZILLA');
52		BROWSERS['FF'] = new setBrowser('Firefox','ff','FIREFOX');
53
54
55		var UNIXDETAIL = new Array("LNX","BSD");
56		var checkVersionExp01 = new Array(' ', '/', '-', '');
57		var checkVersionExp02 = new Array(';', ' ', '(', '[', ')', '+', '-', '/');
58
59		uaString = " " + uaString + ";";
60		
61
62		index = 0;
63		for (key in BROWSERS) {
64			for (i=0; i<BROWSERS[key].keyword.length; i++) {
65				keyIndex = uaString.indexOf(BROWSERS[key].keyword[i].toUpperCase());
66				if (keyIndex > index) {
67					this.browserLongName = BROWSERS[key].longName;
68					this.browserShortName = BROWSERS[key].shortName;
69					versionKey = BROWSERS[key].keyword[i].toUpperCase();
70					index = keyIndex;
71				}
72			}
73		}
74
75		// Navigator is reary?
76		if (this.browserShortName == "nn" && uaString.indexOf("COMPATIBLE")>0) {
77			this.browserLongName = "---";
78			this.browserShortName = "---";
79		}
80
81		// Version Check
82		if (this.browserLongName != "---") {
83			for (i=0; i<checkVersionExp01.length; i++) {
84				key = versionKey + checkVersionExp01[i];
85				if ( ( keyIndex = uaString.indexOf(key) ) > 0 ) break;
86			}
87			// Mozilla
88			if ( key == 'GECKO/' ) {
89				key = 'RV:';
90				keyIndex = uaString.indexOf(key);
91			}
92			keyIndex = keyIndex + key.length;
93			index = uaString.length;
94			for (i=0; i<checkVersionExp02.length; i++) {
95				if ((key = uaString.indexOf(checkVersionExp02[i], keyIndex)) > 0) {
96					if (key < index) {
97						keyIndexEnd = key;
98						index = keyIndexEnd;
99					}
100				}
101			}
102			this.browserVersion = uaString.substring(keyIndex, keyIndexEnd);
103		}
104
105		function setBrowser(longName,shortName,keyWord) {
106			this.longName = longName;
107			this.shortName = shortName;
108			this.keyword = keyWord.split(",");
109		}
110
111	}
112
113}
114
115
116

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.