使用jQuery选择器不只比使用传统的getElementById()和getElementsByTagName()函数简洁得多,并且还能避免某些错误。请看下面例子:css
1 <script> 2 document.getElementById("div").style.color ="red"; 3 </script>
运行上面代码后,浏览器就会报错,缘由是网页中没有ID为div的元素。jquery
改进后代码以下:浏览器
1 <script> 2 if(document.getElementById("div")){ //用了IF语句来判断是否有ID为div的元素,若是有,执行下面代码 3 document.getElementById("div").style.color ="red" 4 } 5 </script>
这样就能够避免游览器报错,但若是要操做的元素不少,可能对每一个元素都要进行一次判断,而jquery方面问题上的处理是很是不错的,即便用JQUERY获取网页中不存在的元素也不会报错。函数
代码以下:spa
1 <script> 2 $("#div").css("color","red"); 3 </script>
有了这个预防措施,即便之后由于某种缘由删除网页上某个之前使用过的元素,也不用担忧这个网页的JavaScript会报错。code
注意点:对象
$("div")获取的永远是jquery对象,即便网页上没有此元素。所以当要用jquery检查某个元素在网页上是否存在时。blog
不能使用如下代码:ip
1 <script> 2 if($("#div")){ 3 $("#div").css("color",red) //这样游览器会报错 4 } 5 </script>
而是应该跟获取长度来判断。get
代码以下:
<script> if($("#div").length >0){ $("#div").css("color",red) } </script>
这时候也能够转化为DOM对象来判断。
代码以下:
1 <body> 2 <div id="div">ccccccc</div> 3 <script src="jquery-2.1.4.min.js"></script> 4 <script> 5 var $div = $("#div"); 6 var div = $div[0]; 7 if(div){ 8 $div.css("color","red") //此时DIV的颜色就变为red 9 } 10 </script> 11 </body>