|
|
51CTO旗下网站
|
|
移动端

详解jQuery对象与DOM对象的相互转换

一直以来对于通过jQuery方式获取的对象,却不能直接使用JavaScript的方法很不理解,我们知道只有jQuery对象才能使用jQuery定义的方法,但要注意DOM对象和jQuery对象是有区别的。

作者:平凡的世界来源:ccvita|2010-09-01 08:57

一直以来对于通过jQuery方式获取的对象,却不能直接使用JavaScript的方法很不理解,现在知道,原来jQuery获得的对象并不和我们平时使用getElementById获得的对象一样。所以一些新手就很迷惑,为什么${”#Element”}不能直接innerHTML,这就是原因所在。

51CTO推荐阅读:jQuery四大天王:核心函数详解

jQuery对象与DOM对象的转换

只有jQuery对象才能使用jQuery定义的方法。注意DOM对象和jQuery对象是有区别的,调用方法时要注意操作的是DOM对象还是jQuery对象。普通的DOM对象一般可以通过$()转换成jQuery对象。

  1. $(document.getElementById("msg"))
  2.  

则为jQuery对象,可以使用jQuery的方法。由于jQuery对象本身是一个集合。所以如果jQuery对象要转换为DOM对象则必须取出其中的某一项,一般可通过索引取出。

  1. $("#msg")[0],$("div").eq(1)[0],$("div").get()[1],$("td")[5] 
  2.  

这些都是DOM对象,可以使用DOM中的方法,但不能再使用jQuery的方法。以下几种写法都是正确的:

  1. $("#msg").html();   
  2. $("#msg")[0].innerHTML;   
  3. $("#msg").eq(0)[0].innerHTML;   
  4. $("#msg").get(0).innerHTML;
  5.  

jQuery DOM操作方法的简单归纳

1.每个匹配的元素中插入新元素,使用:

  1. .append()   
  2. .appendTo()   
  3. .prepend()  
  4. .prependTo()
  5.  

2.要在每个匹配的元素相邻的位置上插入新元素,使用:

  1. .after()  
  2. .insertAfter()  
  3. .before()  
  4. .insertBefore() 
  5.  

3.要在每个匹配的元素外部插入新元素,使用:

  1. .wrap() 
  2.  

4.要用新元素或文本替换每个匹配的元素,使用:

  1. .html()  
  2. .text()
  3.  

5.要移除每个匹配的元素中的元素,使用:

  1. .empty()
  2.  

6.要从文档中移除每个匹配的元素及后代元素,但不实际删除它们,使用:

  1. .remove()
  2.  

原文地址:http://www.ccvita.com/192.html

【编辑推荐】

  1. jQuery核心部分原理的模拟代码
  2. jQuery最佳实践:精妙的自定义事件
  3. jQuery让开发者恋恋不舍的秘密
【责任编辑:王晓东 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

J2EE开发全程实录

J2EE是目前企业级软件开发的首选平台。本书从架构的角度讲解了一个完整的J2EE系统的搭建。内容包括:正则表达式、JSP、Swing、XML等技术在...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊