jquery remove()不兼容問題解決方案
CreationTime--2018年7月27日10點19分
Author:Marydon
1.情景展示
點擊關閉,將這個div移除掉
源碼展示
使用jquery的remove()方法移除不掉,報錯信息如下:
2.解決方案
但是,將代碼復制到單獨的html文件中,進行測試,卻沒有問題,
而且,項目中其它地方使用remove()方法也沒問題,很尷尬。。。
網上說這是ie11的兼容問題,姑且把這種情況歸類到兼容性上吧。
先找要刪除的節點的父級節點,然后使用原生js的removeChild方法刪除該節點。
$('#closeWind').click(function() { //jquery對象轉換成js對象 var wrapBox = $('#wrapBox')[0]; var upLoadBox = $('div.upLoadBox')[0]; $("body")[0].removeChild(wrapBox); $("body")[0].removeChild(upLoadBox); });
3.小結
正確地對待這個問題:
如果報錯再使用原生js移除節點;否則使用jquery的remove()方法實現;
當然了,使用原生js是絕對不會出問題的,使用jquery相對js會方便些!