JS-浏览器检测
/*
navigator对象是window对象下的
alert(window.navigator);
alert(navigator.appName); //浏览器的名称,这个属性不能精确的取到浏览器的名称
alert(navigator.userAgent); //用户代理字符串,表示浏览器信息的东西
alert(navigator.platform); //表示浏览器所在的系统
浏览器嗅探器
alert(BrowserDetect.browser); //浏览器的名称
alert(BrowserDetect.version); //浏览器的版本
alert(BrowserDetect.OS); //所在的系统
//给IE7以下的浏览器做特殊处理
if(BrowserDetect.browser == 'Internet Explorer' && BrowserDetect.version < 7){
alert('需要做IE低版本的兼容!');
}
检测插件
for(var i=0; i<navigator.plugins.length; i++){
document.write('插件名:' + navigator.plugins[i].name + '<br />');
document.write('文件名:' + navigator.plugins[i].filename + '<br />');
document.write('描 述:' + navigator.plugins[i].description + '<br />');
document.write('<br />');
}
检测非IE浏览器插件是否存在
function hasPlugin(name){
var name = name.toLowerCase(); //将字符串转换为小写
for(var i=0; i<navigator.plugins.length; i++){
if(navigator.plugins[i].name.toLowerCase().indexOf(name) > -1){
return true;
}
}
return false;
}
alert(hasPlugin('Flash'));
检测IE浏览器的控件
function hasIEPlugin(name){
try{ //这里会尝试去执行一段代码,如果有误,就去执行catch这段代码
new ActiveXObject(name) //这里的name必须是控件的唯一标示符ID
return true; //如果new成功了,没有产生错误,那么就不去执行catch
}catch(e){
return false; //如果new失败了,就执行catch里面的语句
}
}
alert(hasIEPlugin('ShockwaveFlash.ShockwaveFlash'));
跨浏览器检测方法
function hasPlugin(name){
var name = name.toLowerCase();
for(var i=0; i<navigator.plugins.length; i++){
if(navigator.plugins[i].name.toLowerCase().indexOf(name) > -1){
return true;
}
}
return false;
}
function hasIEPlugin(name){
try{
new ActiveXObject(name)
return true;
}catch(e){
return false;
}
}
function hasFlash(){
var result = hasPlugin('Flash');
if(!result){
result = hasIEPlugin('ShockwaveFlash.ShockwaveFlash');
}
return result;
}
alert(hasFlash());
MIME类型
for(var i=0; i<navigator.mimeTypes.length; i++){
if(navigator.mimeTypes[i].enabledPlugin != null){
document.write('<dl>');
document.write('<dd>类型名称:' + navigator.mimeTypes[i].type + '</dd>');
document.write('<dd>类型引用:' + navigator.mimeTypes[i].enabledPlugin.name + '</dd>');
document.write('<dd>类型描述:' + navigator.mimeTypes[i].description + '</dd>');
document.write('<dd>类型后缀:' + navigator.mimeTypes[i].suffixes + '</dd>');
document.write('</dl>');
}
}
*/

浙公网安备 33010602011771号