浏览器差异总结,可以用此判断浏览器版本(转)
總結(jié)一下瀏覽器間的差異如下:
1.safari下,typeof nodeList的類型為function
2.在大多數(shù)游覽器中checkbox的value默認(rèn)為on,唯有chrome返回空字符串
3.某些瀏覽器不支持w3c的cssFloat屬性來(lái)獲取浮動(dòng)樣式,而是使用獨(dú)家的styleFloat屬性
4.IE678的getElementByTagName(“*”)無(wú)法遍歷出Object元素下的param元素(bug)
5.IE678不能通過(guò)innerHTML生成link,style,script節(jié)點(diǎn)(bug)
6.IE6789由于無(wú)法識(shí)別HTML5的新標(biāo)簽,因此復(fù)制這些新元素時(shí)也不正確(bug)
7.在標(biāo)準(zhǔn)瀏覽器下,cloneNode(true)是不復(fù)制事件的,以防止循環(huán)引用無(wú)法釋放內(nèi)存,而IE卻沒(méi)有考慮到這一點(diǎn),把事件復(fù)制了(inconformity)
8.IE67不支持display:inline-block,需要通過(guò)hasLayout方法去模擬(bug)
9.透明度
10.標(biāo)準(zhǔn)瀏覽器只有在table與tr之間不存在tbody的情況下添加tbody,而IE678則笨多了,即在里面為空也亂加tbody
11.mouseenter,mouseleave只有IE支持,但它們比mouseover mouseout性能好,因此各庫(kù)都有模擬的實(shí)現(xiàn)
12.innerText火狐不支持,它使用的是textContent
自 navigator 對(duì)象的信息具有誤導(dǎo)性,不應(yīng)該被用于檢測(cè)瀏覽器版本,這是因?yàn)?#xff1a;
navigator 數(shù)據(jù)可被瀏覽器使用者更改。
瀏覽器無(wú)法報(bào)告晚于瀏覽器發(fā)布的新操作系統(tǒng)
所以很多時(shí)候,我們可以通過(guò)這些瀏覽器的兼容特性來(lái)判斷是什么瀏覽器。
瀏覽器檢測(cè)
由于 navigator 可誤導(dǎo)瀏覽器檢測(cè),使用對(duì)象檢測(cè)可用來(lái)嗅探不同的瀏覽器。
由于不同的瀏覽器支持不同的對(duì)象,您可以使用對(duì)象來(lái)檢測(cè)瀏覽器。例如,由于只有 Opera 支持屬性 "window.opera",您可以據(jù)此識(shí)別出 Opera。
例子:if (window.opera) {...some action...}
轉(zhuǎn)載于:https://www.cnblogs.com/junxtx/p/4139859.html
總結(jié)
以上是生活随笔為你收集整理的浏览器差异总结,可以用此判断浏览器版本(转)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: MyEclipse 皮肤、主题、背景色
- 下一篇: 2017年html5行业报告,云适配发布