DOM操作原生js 的bug,使用jQuery 可以消除的解决方法


Posted in Javascript onSeptember 04, 2016

js的 bug 类型:  Uncaught TypeError:Cannot set/read property 'xxx' of null

在进行DOM操作的时候比较容易发生这个错误,比如:

1.  document.getElementById('test1').style.display='none'

2.  document.getElementById('test1').onclick=function(){/*相关代码*/}

假如DOM中无此 test1对象,将会抛出上面的错误,发生这种错误后,代码后面的模块将会失去效果,这是比较头疼的地方。

要解决这个bug可以用 try/catch 来消除,但是,try/catch 会带来额外开销。如果直接删除,也是可以的,但如果这个js是个公共的,可能对其他页面造成影响。今天无意中将上述代码改成jQuery风格后,bug解决。那么jQuery是如何解决的呢?是try/catch吗?这就需要看看源码了。

以上这篇DOM操作原生js 的bug,使用jQuery 可以消除的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Jquery修改页面标题title其它JS失效的解决方法
Oct 31 Javascript
让angularjs支持浏览器自动填表
Nov 10 Javascript
js和jQuery设置Opacity半透明 兼容IE6
May 24 Javascript
jQuery查找节点方法完整实例
Sep 13 Javascript
VueJs单页应用实现微信网页授权及微信分享功能示例
Jul 26 Javascript
手挽手带你学React之React-router4.x的使用
Feb 14 Javascript
vue+iview动态渲染表格详解
Mar 19 Javascript
js实现全选反选不选功能代码详解
Apr 24 Javascript
详解vuex的简单todolist例子
Jul 14 Javascript
JavaScript设计模型Iterator实例解析
Jan 22 Javascript
JavaScript 语句之常用 for 循环详解
Mar 29 Javascript
使用react+redux实现计数器功能及遇到问题
Jun 02 Javascript
每个程序员都需要学习 JavaScript 的7个理由小结
Sep 03 #Javascript
JavaScript 冒泡排序和选择排序的实现代码
Sep 03 #Javascript
浅析$(function) ready和onload 的区别
Sep 03 #Javascript
详解Javascript中prototype属性(推荐)
Sep 03 #Javascript
jQuery基本选择器之标签名选择器
Sep 03 #Javascript
基于JS实现回到页面顶部的五种写法(从实现到增强)
Sep 03 #Javascript
jQuery dataTables与jQuery UI 对话框dialog的使用教程
Sep 02 #Javascript
You might like
php 学习资料零碎东西
2010/12/04 PHP
源码分析 Laravel 重复执行同一个队列任务的原因
2017/12/25 PHP
PHP simplexml_load_string()函数实例讲解
2019/02/03 PHP
ThinkPHP5分页paginate代码实例解析
2020/11/10 PHP
JavaScript 输入框内容格式验证代码
2010/02/11 Javascript
Array, Array Constructor, for in loop, typeof, instanceOf
2011/09/13 Javascript
关于IE BUG与字符串截取substr的解决办法
2013/04/10 Javascript
javascript数组去重方法终极总结
2014/06/05 Javascript
jquery动态调整div大小使其宽度始终为浏览器宽度
2014/06/06 Javascript
JavaScript的Ext JS框架中的GridPanel组件使用指南
2016/05/21 Javascript
Vue.js快速入门教程
2016/09/07 Javascript
Javascript之面向对象--方法
2016/12/02 Javascript
JS实现禁止用户使用Ctrl+鼠标滚轮缩放网页的方法
2017/04/28 Javascript
Mint UI 基于 Vue.js 移动端组件库
2017/11/07 Javascript
使用axios实现上传图片进度条功能
2017/12/21 Javascript
vue.js实现双击放大预览功能
2020/06/23 Javascript
Python中字符串对齐方法介绍
2015/05/21 Python
在Python中使用zlib模块进行数据压缩的教程
2015/06/26 Python
关于Python中浮点数精度处理的技巧总结
2017/08/10 Python
Python基于whois模块简单识别网站域名及所有者的方法
2018/04/23 Python
python模拟表单提交登录图书馆
2018/04/27 Python
Python 实现王者荣耀中的敏感词过滤示例
2019/01/21 Python
Python基础学习之时间转换函数用法详解
2019/06/18 Python
Python编写带选项的命令行程序方法
2019/08/13 Python
解决pycharm中导入自己写的.py函数出错问题
2020/02/12 Python
python db类用法说明
2020/07/07 Python
Python3爬虫发送请求的知识点实例
2020/07/30 Python
Keds加拿大官网:购买帆布运动鞋和皮鞋
2019/09/26 全球购物
英国在线药房和在线医生:LloydsPharmacy
2019/10/21 全球购物
艺术爱好者的自我评价分享
2013/10/08 职场文书
大三预备党员入党思想汇报
2014/01/08 职场文书
工会主席岗位责任制
2014/02/11 职场文书
三好学生评语大全
2014/12/29 职场文书
求职信如何撰写?
2019/05/22 职场文书
python中 Flask Web 表单的使用方法
2022/05/20 Python
CSS 实现角标效果的完整代码
2022/06/28 HTML / CSS