jQuery2.0.0版本以后不再支持ie8的原因


在引用jQuery時,引用高版本的Jq會在IE8下報錯,在網上查了一下,jq在2.0+的版本就已經放棄對ie8的支持了。之前沒有仔細研究過jq版本,借此機會去看了一下jq版本的知識。
一、如何查看jq的版本
  $.fn.jquery

  

  

  

  

 

   可見,這個方法在壓縮、未壓縮、高版本、低版本都可用

   擼代碼

  未壓縮版本

    https://cdn.bootcss.com/jquery/2.0.0/jquery.js

      line:49

      core_version = "2.0.0",//定義當前版本號

      line:98

      

  已壓縮版本

    https://cdn.bootcss.com/jquery/1.11.2/jquery.min.js

       

 

 


二、低版本jq在ie下不報錯,高版本jq在ie下報錯

    

  查看2.0.0的源碼,只有addEventListener,顯然IE不支持這個方法,IE下添加事件監聽需要用attachEvent

      

  再看1.11.2的版本源碼,有點長,做了對addEventListener的判斷,不支持的話走attachEvent

    

 

 當然這只是使用高版本jq報的第一個錯誤,事情走到這一步就已經明了了,查看jq官網對瀏覽器的支持 http://jquery.com/browser-support/

 我們找到這樣一段話

  

 

 英語不好,拿谷歌翻譯了一下 :(Current-1)和Current表示我們支持瀏覽器的當前穩定版本及其之前的版本。 例如,如果當前版本的瀏覽器是24.x,我們支持24.x和23.x版本。

  最后一句話,想要支持ie6-8,使用jq1.12-.

 

總結起來就是一句話:jQuery2.0.0版本沒有attachEvent所以ie8下會報錯(當然ie8下報錯不止這一個原因,但這是要想修復高版本jq在ie8下報錯首先要解決的問題,這回牽扯出一系列的ie8兼容問題,這些兼容問題jq1.12-已經解決了,官方推薦ie8下使用1.12還是有原因的)

 

    

 



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM