通过JS和JQuery获取的的元素有什么不同啊?

通过JS和JQuery获取的的元素有什么不同啊?
为什么有时候通过JQuery获取的元素能够调用一些属性,这些属性是JS获取的元素也有的属性。 有时候就不行。

阅读 5.7k
5 个回答

jQuery对象比js对象多了一些包装方法,比如.htm() .attr() .css() 等等,一般jQuery对象提供了更多更为实用的方法,还是比较建议采用的,如需要转化为js对象的话调用.get(0)即可。

JS获取的是DOM元素。
jQuery返回的是jQuery对象,它是一个类数组对象,属性0,1,2...中存着查到的DOM对象,它有一个length属性,表示查到的DOM对象总数。jQuery对象执行一些方法时,会迭代在每一个DOM对象上执行该方法。

在这里,你一定要知道一个问题,那就是一个是DOM对象一个是jQuery对象
还有在这里,还需要明白一个问题,对于所有的浏览器,最最最底层都支持javascript,可能在某些浏览器支持一些对象和属性,一些浏览器不支持,所以才会出现了jQuery,解决了浏览器各个兼容的问题。
如果是DOM对象,可能可以使用浏览器底层的方法来使用,比如document.getElementById('A').src='aaa.png';
如果是jQuery对象,就只能使用jQuery自己提供的方法和属性了;
所以问题来了,有使用需要使用DOM,有时候需要使用jQuery对象,两者可能会相互转换的。
使用jQuery选取的对象一般都是数组,你只要使用[0]选取第一个元素,就是DOM对象了,
比如我们要选择表单之后再清空,$("form")[0].reset();

jq是对js的扩展,不知道你指的js有的属性jq没有是什么意思,有没有具体的例子

console.log()打印就知道了

推荐问题