IE11瀏覽器:請不要再叫我IE,謝謝,ie11ie

來源:互聯網
上載者:User

IE11瀏覽器:請不要再叫我IE,謝謝,ie11ie

這篇對自已挺有用的,特mark一下,純轉載。

轉載自:nczonline

微軟在上周剛剛發布了用於Windows 8.1上 的首個Internet Explorer 11的預覽版。我們已經確認Internet Explorer 11中的一些新特性,包括對WebGL的支援、預抓取、預渲染、flexbox、mutation observers以及其他一些Web標準的支援。但是更有趣的是,雖然被叫為Internet Explorer 11,但它已經不再是IE了。

這也是首次微軟真正移除了Internet Explorer的一些特性:更改了user-agent字串,這使得很多判斷瀏覽器是否IE的代碼無法工作,包括有些JavaScript的 isIE()的方法在Internet Explorer 11上執行會返回false。不過好在Internet Explorer 11對Web標準的支援非常好,因此不再需要之前那些IE特定的行為。

在Internet Explorer 11中,user-agent比之前的版本要短很多,而且去掉了最關鍵的MSIE的關鍵字:

上述user-agent你還會注意到增加了Gecko的標識,而Safari是首個標註了Gecko的瀏覽器。

之前多數使用MSIE來判斷是否IE瀏覽器的代碼都無法工作,可以改用Trident字串來判斷。Trident標識是在IE9中引入的。

此外微軟還更改了navigator對象:

• navigator.appName值為“Netscape”

• navigator.product值為“Gecko”

這或許是一項開發人員的詭計,但該行為的確是在HTML5中實際指定的。在HTML5中要求這兩個屬性必須返回上述對應的值,這是一個很奇怪的規定的,更奇怪的是Internet Explorer 11遵守了這個規定。

此舉導致一些根據navigator對象判斷瀏覽器型號的JavaScript代碼會將Internet Explorer 11識別成基於Gecko的瀏覽器。

document.all和friends

從IE 4開始,document.all在IE中舉足輕重。比起document.getElementById()來說,document.all是IE方式 的擷取元素的引用的方法。儘管IE 5增加對DOM的支援,但document.all一直沿用至IE 10。而在Internet Explorer 11中終於被廢棄了,這意味著在Internet Explorer 11中使用document.all的方法將可能導致執行失敗,儘管使用了document.all的代碼實際上還是可以工作。

另外一個要廢棄的是attachEvent()方法,該方法用於添加事件處理器,對應的detachEvent()用來移除事件處理器。這兩個方法將在Internet Explorer 11中刪除。移除這兩個方法需要改用如下邏輯:

當然,建議你優先使用標準的瀏覽器進行測試以確保不會因為attachEvent()的移除而影響代碼執行。不過互連網上充斥著各種糟糕的監測代碼,你只能確保自己的應用經過良好的標準測試。

被刪除的特性還包括:

所有這些被廢棄的方法都有基於標準的替代方法。如果你使用的是標準的方法那恭喜你,可直接支援Internet Explorer 11.

結論

看起來Internet Explorer 11應該是Internet Explorer家族最棒的版本。通過最終移除過去一些魔鬼般的錯誤,微軟正在為大家準備一個真正標準的瀏覽器。

更新:document.all並沒有真正被刪除,但不推薦使用。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.