fckbrowserinfo.js
61 lines
| 2.0 KiB
| application/javascript
|
JavascriptLexer
|
r0 | /* | ||
* FCKeditor - The text editor for Internet - http://www.fckeditor.net | ||||
* Copyright (C) 2003-2008 Frederico Caldeira Knabben | ||||
* | ||||
* == BEGIN LICENSE == | ||||
* | ||||
* Licensed under the terms of any of the following licenses at your | ||||
* choice: | ||||
* | ||||
* - GNU General Public License Version 2 or later (the "GPL") | ||||
* http://www.gnu.org/licenses/gpl.html | ||||
* | ||||
* - GNU Lesser General Public License Version 2.1 or later (the "LGPL") | ||||
* http://www.gnu.org/licenses/lgpl.html | ||||
* | ||||
* - Mozilla Public License Version 1.1 or later (the "MPL") | ||||
* http://www.mozilla.org/MPL/MPL-1.1.html | ||||
* | ||||
* == END LICENSE == | ||||
* | ||||
* Contains browser detection information. | ||||
*/ | ||||
var s = navigator.userAgent.toLowerCase() ; | ||||
var FCKBrowserInfo = | ||||
{ | ||||
IsIE : /*@cc_on!@*/false, | ||||
IsIE7 : /*@cc_on!@*/false && ( parseInt( s.match( /msie (\d+)/ )[1], 10 ) >= 7 ), | ||||
IsIE6 : /*@cc_on!@*/false && ( parseInt( s.match( /msie (\d+)/ )[1], 10 ) >= 6 ), | ||||
IsSafari : s.Contains(' applewebkit/'), // Read "IsWebKit" | ||||
IsOpera : !!window.opera, | ||||
IsAIR : s.Contains(' adobeair/'), | ||||
IsMac : s.Contains('macintosh') | ||||
} ; | ||||
// Completes the browser info with further Gecko information. | ||||
(function( browserInfo ) | ||||
{ | ||||
browserInfo.IsGecko = ( navigator.product == 'Gecko' ) && !browserInfo.IsSafari && !browserInfo.IsOpera ; | ||||
browserInfo.IsGeckoLike = ( browserInfo.IsGecko || browserInfo.IsSafari || browserInfo.IsOpera ) ; | ||||
if ( browserInfo.IsGecko ) | ||||
{ | ||||
var geckoMatch = s.match( /rv:(\d+\.\d+)/ ) ; | ||||
var geckoVersion = geckoMatch && parseFloat( geckoMatch[1] ) ; | ||||
// Actually "10" refers to Gecko versions before Firefox 1.5, when | ||||
// Gecko 1.8 (build 20051111) has been released. | ||||
// Some browser (like Mozilla 1.7.13) may have a Gecko build greater | ||||
// than 20051111, so we must also check for the revision number not to | ||||
// be 1.7 (we are assuming that rv < 1.7 will not have build > 20051111). | ||||
if ( geckoVersion ) | ||||
{ | ||||
browserInfo.IsGecko10 = ( geckoVersion < 1.8 ) ; | ||||
browserInfo.IsGecko19 = ( geckoVersion > 1.8 ) ; | ||||
} | ||||
} | ||||
})(FCKBrowserInfo) ; | ||||