當(dāng)前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
【JS】检测插件
為什么80%的碼農(nóng)都做不了架構(gòu)師?>>> ??
//plugin?detection?-?doesn't?work?in?IE function?hasPlugin(name){name?=?name.toLowerCase();for?(var?i=0;?i?<?navigator.mimeTypes.length;?i++){if?(navigator.mimeTypes[i].name.toLowerCase().indexOf(name)?>?-1){return?true;}}return?false; }//detect?flash alert(hasPlugin("Flash"));在IE下不支持Netscape式的插件,在IE中檢測插件的唯一方式 是使用專有的ActiveXObject類型,并創(chuàng)建一個(gè)特定插件的實(shí)例,IE是以COM對象的方式實(shí)現(xiàn)插件的,而COM對象使用唯一標(biāo)識符來標(biāo)識。所以,在IE下要檢測特定插件,必須知道其COM標(biāo)識符。比如Flash的標(biāo)識符是ShockwaveFlash.ShockwaveFlash。
//plugin?detection?for?IE function?hasIEPlugin(name){try?{new?ActiveXObject(name);return?true;}?catch?(ex){return?false;} }//detect?flash alert(hasIEPlugin("ShockwaveFlash.ShockwaveFlash"));一般針對每個(gè)插件分別創(chuàng)建檢測函數(shù),而不是使用通用檢測方法:(以檢測Flash插件為例)
//detect?flash?for?all?browsers function?hasFlash(){var?result?=?hasPlugin("Flash");if?(!result){result?=?hasIEPlugin("ShockwaveFlash.ShockwaveFlash");}return?result; }//detect?flash alert(hasFlash());轉(zhuǎn)載于:https://my.oschina.net/hin911/blog/371281
總結(jié)
- 上一篇: 探究platform_driver中“多
- 下一篇: 原型图Mockplus:怎样使用图片裁切