DOM操作原生js 的bug,使用jQuery 可以消除的解決方法
js的 bug 類型: Uncaught TypeError:Cannot set/read property 'xxx' of null
在進(jìn)行DOM操作的時(shí)候比較容易發(fā)生這個(gè)錯(cuò)誤,比如:
1. document.getElementById('test1').style.display='none'
2. document.getElementById('test1').onclick=function(){/*相關(guān)代碼*/}
假如DOM中無此 test1對象,將會(huì)拋出上面的錯(cuò)誤,發(fā)生這種錯(cuò)誤后,代碼后面的模塊將會(huì)失去效果,這是比較頭疼的地方。
要解決這個(gè)bug可以用 try/catch 來消除,但是,try/catch 會(huì)帶來額外開銷。如果直接刪除,也是可以的,但如果這個(gè)js是個(gè)公共的,可能對其他頁面造成影響。今天無意中將上述代碼改成jQuery風(fēng)格后,bug解決。那么jQuery是如何解決的呢?是try/catch嗎?這就需要看看源碼了。
以上這篇DOM操作原生js 的bug,使用jQuery 可以消除的解決方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- javascript中html字符串轉(zhuǎn)化為jquery dom對象的方法
- jquery對象和javascript對象即DOM對象相互轉(zhuǎn)換
- js/jQuery對象互轉(zhuǎn)(快速操作dom元素)
- NodeJS使用jQuery選擇器操作DOM
- JS、DOM和JQuery之間的關(guān)系示例分析
- js和jquery對dom節(jié)點(diǎn)的操作(創(chuàng)建/追加)
- 使用js dom和jquery分別實(shí)現(xiàn)簡單增刪改
- JavaScript對象之間的轉(zhuǎn)換 jQuery對象和原聲DOM
- JS/jQuery判斷DOM節(jié)點(diǎn)是否存在的簡單方法
- 原生JS和jQuery操作DOM對比總結(jié)
相關(guān)文章
JavaScript 獲取/設(shè)置光標(biāo)位置,兼容Input&&TextArea
JavaScript 獲取/設(shè)置光標(biāo)位置,兼容Input&&TextArea:項(xiàng)目中遇到的問題,特此記錄。2011-01-01解決layer.open彈出框不能獲取input框的值為空的問題
今天小編就為大家分享一篇解決layer.open彈出框不能獲取input框的值為空的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09js實(shí)現(xiàn)的四級左側(cè)網(wǎng)站分類菜單實(shí)例
這篇文章主要介紹了js實(shí)現(xiàn)的四級左側(cè)網(wǎng)站分類菜單,實(shí)例分析了javascript操作頁面元素實(shí)現(xiàn)tab切換的相關(guān)技巧,需要的朋友可以參考下2015-05-05bootstrap datetimepicker日期插件使用方法
這篇文章主要為大家詳細(xì)介紹了bootstrap datetimepicker的使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-01-01JavaScript中日常收集常見的10種錯(cuò)誤(推薦)
本文是小編給大家日常收集整理的js中常見的10種錯(cuò)誤,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下2017-01-01