js判断是否是IE浏览器的几种方法
前几天在网上【zài wǎng shàng】看到一【kàn dào yī】🎣个技术🈂牛人写的世界上判断【shàng pàn duàn】是否IE浏览器之最短🛩的js代码,如下【rú xià】🧚:
<script> if(!+[1,])alert("这是🚱ie浏览器【liú lǎn qì】🛬"); else alert("这不是【zhè bú shì】ie浏览器【liú lǎn qì】🛬"); </script> |
怎么样【zěn me yàng】,强悍吧🤸。今天在【jīn tiān zài】🌬博客园又看到🎅一位朋友总结🤩了其它一些判断方法⭕(实例代【shí lì dài】码),于是烈😟火把这【huǒ bǎ zhè】些教程转载给大家【dà jiā】,期待对【qī dài duì】您有所帮助:
其实有【qí shí yǒu】很多判【hěn duō pàn】断的方🚏法【fǎ】,大都是根据浏😎览器的特性来💱的。
比如库🎂prototype的【de】方法是:!!(window.attachEvent && navigator.userAgent.indexOf('Opera') === -1) 。就是根【jiù shì gēn】据📚ie支持window.attachEvent添加侦听事件【tīng shì jiàn】🖥,非ie用window.addEventListener添加侦听事件【tīng shì jiàn】🖥来判断🐝的【de】。navigator.userAgent.indexOf('Opera') === -1是因为opara浏览器能伪装👂成【chéng】ie.如果🈴!!(window.attachEvent )为真【wéi zhēn】,就是【jiù shì】ie;反之,如果🈴!window.addEventListener为真【wéi zhēn】,也可以【yě kě yǐ】判断为🛂ie.
Ext使用的是!"1"[0],他利用【tā lì yòng】😁IE无法使【wú fǎ shǐ】用数组【yòng shù zǔ】下标访🚲问字符串的特👊性来判断。在ie8下好像⛪有问题【yǒu wèn tí】。
在【zài】!+[1,]还未被🤽发现前🐈,判断🐫ie最短的【zuì duǎn de】表达式是【shì】 !+"\v1".它利用【tā lì yòng】🎌的是【shì】ie不支持垂直制表符的特性。
以前还【yǐ qián hái】有一个【yǒu yī gè】常用方🕋法是【fǎ shì】document.all,由于🆔opera浏览器能伪装🚇成ie。可以这样写:!!(document.all && navigator.userAgent.indexOf('Opera') === -1).
还有很多,先记这几条,便于工作时查阅。
1.+[1,]
2.!+"\v1"
3.!!(window.attachEvent && navigator.userAgent.indexOf('Opera') === -1)
4.!!(!window.addEventListener&& navigator.userAgent.indexOf('Opera') === -1)
5.!!(document.all && navigator.userAgent.indexOf('Opera') === -1)
关键词:js,IE浏览器
阅读本文后您有什么感想? 已有 人给出评价!
- 0
- 0
- 0
- 0
- 0
- 0