使用jQuery選擇器不僅比使用傳統的getElementById()和getElementsByTagName()函數簡潔得多,而且還能避免某些錯誤。請看下面例子:
<script> document.getElementById("div").style.color ="red"; </script>
運行上面代碼後,浏覽器就會報錯,原因是網頁中沒有ID為div的元素。
改進後代碼如下:
<script> if(document.getElementById("div")){ //用了IF語句來判斷是否有ID為div的元素,如果有,執行下面代碼 document.getElementById("div").style.color ="red" } </script>
這樣就可以避免游覽器報錯,但如果要操作的元素很多,可能對每個元素都要進行一次判斷,而jquery方面問題上的處理是非常不錯的,即使用JQUERY獲取網頁中不存在的元素也不會報錯。
代碼如下:
<script> $("#div").css("color","red"); </script>
有了這個預防措施,即使以後因為某種原因刪除網頁上某個以前使用過的元素,也不用擔心這個網頁的JavaScript會報錯。
注意點:
$("div")獲取的永遠是jquery對象,即使網頁上沒有此元素。因此當要用jquery檢查某個元素在網頁上是否存在時。
不能使用以下代碼:
<script> if($("#div")){ $("#div").css("color",red) //這樣游覽器會報錯 } </script>
而是應該跟獲取長度來判斷。
代碼如下:
<script> if($("#div").length >0){ $("#div").css("color",red) } </script>
這時候也可以轉化為DOM對象來判斷。
代碼如下:
<body> <div id="div">ccccccc</div> <script src="jquery-2.1.4.min.js"></script> <script> var $div = $("#div"); var div = $div[0]; if(div){ $div.css("color","red") //此時DIV的顏色就變為red } </script> </body>