jquery和document获取html元素的区别是什么?


本文摘自PHP中文网,作者青灯夜游,侵删。

区别:jquery获取的html元素是jquery对象,可以执行jquery的方法,而document获取的是dom对象,执行的是dom的方法。jQuery对象是jQuery独有的,不能用DOM方法;而DOM对象也不能用jQuery方法。

相关推荐:《jQuery教程》

最近通过ocx做了一个视频插件,然后将插件放到html中(想知道的可以看一下)

因为我要操作这个插件,要播放,停止等,所以我需要获取这个元素,不出意外的,我就用jquery来获取,然后根本无法执行,然后用document来获取,正常执行,具体的如下所示

1

2

3

//正常执行     var obj = document.getElementById("player00");

obj.testhelloworld();//无法执行var playobj = $('#player00');

playobj.testhelloworld();

然后我就在想,这两者有什么区别呢?然后搜索了如下结论

jquery获取的html元素是jquery对象,可以执行jquery的方法,而document获取的是dom对象,执行的是dom的方法

说明:

DOM对象是我们用传统的方法(javascript)获得的对象,jQuery对象就是用jQuery的类库选择器获得的对象。JQuery对象就是通过jQuery包装DOM对象后产生的对象。JQuery对象是jQuery独有的,其可以使用jQuery里的方法,但是不能使用DOM的方法

顿时释然,我此前一直认为两个是等价的,并为追究为什么dom的方法为什么不能在jquery来执行,现在想想,完全释然了。

既然这样,那么两者之间怎么互相转化呢?毕竟所得到的对象的内容是一样的。

jQuery对象转成DOM对象:

两种转换方式将一个jQuery对象转换成DOM对象:[index]和.get(index);

(1)jQuery对象是一个数据对象,可以通过[index]的方法,来得到相应的DOM对象。

如:

1

2

3

var $v =$("#v") ; //jQuery对象

var v=$v[0]; //DOM对象

alert(v.checked) //检测这个checkbox是否被选中

(2)jQuery本身提供,通过.get(index)方法,得到相应的DOM对象

如:

1

2

3

var $v=$("#v"); //jQuery对象

var v=$v.get(0); //DOM对象

alert(v.checked) //检测这个checkbox是否被选中

DOM对象转成jQuery对象:

对于已经是一个DOM对象,只需要用$()把DOM对象包装起来,就可以获得一个jQuery对象了。$(DOM对象)

如:

1

2

var v=document.getElementById("v"); //DOM对象

var $v=$(v); //jQuery对象

转换后,就可以任意使用jQuery的方法了。

通过以上方法,可以任意的相互转换jQuery对象和DOM对象。需要再强调注意的是:DOM对象才能使用DOM中的方法,jQuery对象是不可以用DOM中的方法。

更多编程相关知识,请访问:编程课程!!

以上就是jquery和document获取html元素的区别是什么?的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

jQuery如何给p标签赋值

jQuery如何判断是否是数组元素

jQuery怎么禁用a标签

jQuery中如何声明数组长度

jQuery如何实现一键全选

jq如何动态添加动态css样式

jQuery如何增加标签属性

jQuery为什么写入口函数

如何解决jQuery $.post 乱码问题

360浏览器不支持jQuery怎么办

更多相关阅读请进入《jQuery》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...