当前位置: 主页 > 前端开发 > JavaScript >

jQuery对象与dom对象的转换

泡在网上的日子 发表于 2013-03-30 17:08 次阅读

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

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

如:

$(document.getElementById("msg"))

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

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

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

$("#msg").html();
$("#msg")[0].innerHTML;
$("#msg").eq(0)[0].innerHTML;
$("#msg").get(0).innerHTML;


上一篇:Jquery追加和删除元素总结
介绍 DOM是Document Object Modeule的缩写,一般来说,DOM操作分成3个方面。 1、DOM Core DOM Core并不专属于javascript,任何一种支持DOM的程序设计语言都可以使用它,用途也远不止仅限于网页,也可以用来处理任何一种使用标记语言编写出来的文档,如XML。
下一篇:javascript和css实现垂直方向自适应的三角提示菜单
查看demo 这是一个比较简单实用的菜单,最重要的是他不需要引用jQuery库。菜单在垂直方向上能做到自适应,当主菜单靠近顶部,子菜单将会在下面,当主菜单靠近底部,子菜单在上面。 html代码: ul id="cbp-tm-menu" class="cbp-tm-menu" li a href="#"Home/a