詳解jQuery對(duì)象與DOM對(duì)象的相互轉(zhuǎn)換
一直以來(lái)對(duì)于通過(guò)jQuery方式獲取的對(duì)象,卻不能直接使用JavaScript的方法很不理解,現(xiàn)在知道,原來(lái)jQuery獲得的對(duì)象并不和我們平時(shí)使用getElementById獲得的對(duì)象一樣。所以一些新手就很迷惑,為什么${”#Element”}不能直接innerHTML,這就是原因所在。
51CTO推薦閱讀:jQuery四大天王:核心函數(shù)詳解
jQuery對(duì)象與DOM對(duì)象的轉(zhuǎn)換
只有jQuery對(duì)象才能使用jQuery定義的方法。注意DOM對(duì)象和jQuery對(duì)象是有區(qū)別的,調(diào)用方法時(shí)要注意操作的是DOM對(duì)象還是jQuery對(duì)象。普通的DOM對(duì)象一般可以通過(guò)$()轉(zhuǎn)換成jQuery對(duì)象。
- $(document.getElementById("msg"))
則為jQuery對(duì)象,可以使用jQuery的方法。由于jQuery對(duì)象本身是一個(gè)集合。所以如果jQuery對(duì)象要轉(zhuǎn)換為DOM對(duì)象則必須取出其中的某一項(xiàng),一般可通過(guò)索引取出。
- $("#msg")[0],$("div").eq(1)[0],$("div").get()[1],$("td")[5]
這些都是DOM對(duì)象,可以使用DOM中的方法,但不能再使用jQuery的方法。以下幾種寫(xiě)法都是正確的:
- $("#msg").html();
- $("#msg")[0].innerHTML;
- $("#msg").eq(0)[0].innerHTML;
- $("#msg").get(0).innerHTML;
jQuery DOM操作方法的簡(jiǎn)單歸納
1.每個(gè)匹配的元素中插入新元素,使用:
- .append()
- .appendTo()
- .prepend()
- .prependTo()
2.要在每個(gè)匹配的元素相鄰的位置上插入新元素,使用:
- .after()
- .insertAfter()
- .before()
- .insertBefore()
3.要在每個(gè)匹配的元素外部插入新元素,使用:
- .wrap()
4.要用新元素或文本替換每個(gè)匹配的元素,使用:
- .html()
- .text()
5.要移除每個(gè)匹配的元素中的元素,使用:
- .empty()
6.要從文檔中移除每個(gè)匹配的元素及后代元素,但不實(shí)際刪除它們,使用:
- .remove()
原文地址:http://www.ccvita.com/192.html
【編輯推薦】