Changeset 2482
- Timestamp:
- 09/20/08 13:20:26 (5 years ago)
- File:
-
- 1 edited
-
CKEditor/branches/prototype/_source/core/env.js (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
CKEditor/branches/prototype/_source/core/env.js
r2371 r2482 94 94 env.gecko = ( navigator.product == 'Gecko' && !env.webkit && !env.opera ); 95 95 96 var version = 0; 97 98 // Internet Explorer 6.0+ 99 if ( env.ie ) 100 version = parseFloat( agent.match( /msie (\d+)/ )[1] ); 101 102 // Gecko. 103 if ( env.gecko ) 104 { 105 var geckoRelease = agent.match( /rv:([\d\.]+)/ ); 106 if ( geckoRelease ) 107 { 108 geckoRelease = geckoRelease[1].split( '.' ); 109 version = geckoRelease[0] * 10000 + ( geckoRelease[1] || 0 ) * 100 + ( geckoRelease[2] || 0 ); 110 } 111 } 112 113 // Opera 9.50+ 114 if ( env.opera ) 115 version = parseFloat( opera.version() ); 116 117 // Adobe AIR 1.0+ 118 // Checked before Safari because AIR have the WebKit rich text editor 119 // features from Safari 3.0.4, but the version reported is 420. 120 if ( env.air ) 121 version = parseFloat( agent.match( / adobeair\/(\d+)/ )[1] ); 122 123 // WebKit 522+ (Safari 3+) 124 if ( env.webkit ) 125 version = parseFloat( agent.match( / applewebkit\/(\d+)/ )[1] ); 126 127 /** 128 * Contains the browser version. 129 * 130 * For gecko based browsers (like Firefox) it contains the revision 131 * number with first three parts concatenated with a padding zero 132 * (e.g. for revision 1.9.0.2 we have 10900). 133 * 134 * For webkit based browser (like Safari and Chrome) it contains the 135 * WebKit build version (e.g. 522). 136 * @name CKEDITOR.env.version 137 * @type Boolean 138 * @example 139 * if ( CKEDITOR.env.ie && <b>CKEDITOR.env.version</b> <= 6 ) 140 * alert( "Ouch!" ); 141 */ 142 env.version = version; 143 96 144 /** 97 145 * Indicates that CKEditor is running on a compatible browser. … … 102 150 * alert( "Your browser is pretty cool!" ); 103 151 */ 104 env.isCompatible = (function() 105 { 106 // Internet Explorer 6.0+ 107 if ( env.ie ) 108 return ( agent.match( /msie (\d+)/ )[1] >= 6 ); 109 110 // Gecko. 111 if ( env.gecko ) 112 { 113 var geckoRelease = agent.match( /rv:([\d\.]+)/ ); 114 if ( !geckoRelease ) 115 return false; 116 geckoRelease = geckoRelease[1].split( '.' ); 117 geckoRelease = geckoRelease[0] * 10000 + ( geckoRelease[1] || 0 ) * 100 + ( geckoRelease[2] || 0 ); 118 return geckoRelease >= 10801; 119 } 120 121 // Opera 9.50+ 122 if ( env.opera ) 123 return parseFloat( opera.version() ) >= 9.5; 124 125 // Adobe AIR 1.0+ 126 // Checked before Safari because AIR have the WebKit rich text editor 127 // features from Safari 3.0.4, but the version reported is 420. 128 if ( env.air ) 129 return ( agent.match( / adobeair\/(\d+)/ )[1] >= 1 ); 130 131 // WebKit 522+ (Safari 3+) 132 if ( env.webkit ) 133 return ( agent.match( / applewebkit\/(\d+)/ )[1] >= 522 ); 134 135 return false; 136 })(); 152 env.isCompatible = 153 ( env.ie && version >= 6 ) || 154 ( env.gecko && version >= 10801 ) || 155 ( env.opera && version >= 9.5 ) || 156 ( env.air && version >= 1 ) || 157 ( env.webkit && version >= 522 ) || 158 false; 137 159 138 160 return env;
Note: See TracChangeset
for help on using the changeset viewer.
