一直以来对于通过jQuery方式获取的对象,却不能直接使用JavaScript的方法很不理解,现在知道,原来jQuery获得的对象并不和我们平时使用getElementById获得的对象一样。所以一些新手就很迷惑,为什么${”#Element”}不能直接innerHTML,这就是原因所在。
51CTO推荐阅读:jQuery四大天王:核心函数详解
jQuery对象与DOM对象的转换
只有jQuery对象才能使用jQuery定义的方法。注意DOM对象和jQuery对象是有区别的,调用方法时要注意操作的是DOM对象还是jQuery对象。普通的DOM对象一般可以通过$()转换成jQuery对象。
复制
$(document.getElementById("msg"))
1.
2.
则为jQuery对象,可以使用jQuery的方法。由于jQuery对象本身是一个集合。所以如果jQuery对象要转换为DOM对象则必须取出其中的某一项,一般可通过索引取出。
复制
$("#msg")[0],$("div").eq(1)[0],$("div").get()[1],$("td")[5]
1.
2.
这些都是DOM对象,可以使用DOM中的方法,但不能再使用jQuery的方法。以下几种写法都是正确的:
复制
$("#msg").html(); $("#msg")[0].innerHTML; $("#msg").eq(0)[0].innerHTML; $("#msg").get(0).innerHTML;
1.
2.
3.
4.
5.
jQuery DOM操作方法的简单归纳
1.每个匹配的元素中插入新元素,使用:
复制
.append() .appendTo() .prepend() .prependTo()
1.
2.
3.
4.
5.
2.要在每个匹配的元素相邻的位置上插入新元素,使用:
复制
.after() .insertAfter() .before() .insertBefore()
1.
2.
3.
4.
5.
3.要在每个匹配的元素外部插入新元素,使用:
复制
.wrap()
1.
2.
4.要用新元素或文本替换每个匹配的元素,使用:
复制
.html() .text()
1.
2.
3.
5.要移除每个匹配的元素中的元素,使用:
复制
.empty()
1.
2.
6.要从文档中移除每个匹配的元素及后代元素,但不实际删除它们,使用:
复制
.remove()
1.
2.
原文地址:http://www.ccvita.com/192.html
【编辑推荐】