jquery("#myid")和document.getElmentById("myid")的区别?
发布网友
发布时间:2024-10-18 16:23
我来回答
共6个回答
热心网友
时间:2024-10-29 14:08
即相同又不相同。
相同:都是根据id获得文档某一节点的。
不相同:
jquery("#myid")是jquery的对象
document.getElmentById("myid")是原始的dom对象
你可以认为第一个是第二个包装以后的, 提供的功能要多很多
jquery对象可以通过get(index)来获得实际的dom对象,或者通过.[0]获得实际的dom对象。在此处即:jquery("#myid").get(0);或者jquery("#myid").[0];都等同于document.getElmentById("myid");
注意:两者又有差别,那就是当页面不存在id为myid的元素时,jquery("#myid")依然是一个jquery的对象,而document.getElmentById("myid")确是空的。
也就是说如果你调用了这些对象的方法,第一种方式是不会报错的。而document.getElmentById("myid")会报错(因为它是null)。
同理当你判断是否存在id为myid的节点时,if(jquery("#myid"))判断是不行的。必须将它转换为dom对象。或者直接if(document.getElmentById("myid"))
热心网友
时间:2024-10-29 14:05
是不一样的
第一个是jquery的对象
第二个是原始的dom元素
你可以认为第一个是第二个包装以后的, 提供的功能要多很多
jquery对象可以通过get(index)来获得实际的dom对象, 比如如果你jquery对象就一个元素, 那么get(0)就是对应的dom对象
热心网友
时间:2024-10-29 14:05
jQuery("#myid")取得的对象是jQuery包装后的结果,其中已经包含了document.getElmentById("myid")取得的对象,可以jQuery("#myid")[0]获取。你可以在Chrome浏览器的控制台直接输入看看。
热心网友
时间:2024-10-29 14:04
只是用不同方法达到同样目的而已
都是获取id为myid的div
热心网友
时间:2024-10-29 14:02
功能是一样的,都是获取ID为myid的元素,只不过jquery("#myid")是jquery的方法,而document.getElmentById("myid")是javascript的方法。
热心网友
时间:2024-10-29 14:10
一个是jquery对象 一个是js元素 完全不相等
因为当你使用jquery获得节点时,得到的是已经被jquery封装过的jquery自定义对象