jQuery选择器和.each()

时间:2016-05-08 06:38:37

标签: javascript jquery dom

为什么选择器返回的对象(例如$("div"))与通过使用.each()函数循环选择器结果得到的对象不同?我不认为我理解任何一个函数的确切语义。有人可以澄清他们为什么不同吗?特别是如果我手动形成一个数组,为什么我不能在该数组的对象上调用相同的方法呢?

例如,为两种情况打印数组中的值会产生不同的结果

array = $("div") 

array = [];
$.each($("div"), function(index, value) {
    array.push(value);
});

注意

事实证明它们实际上是相同的。由于浏览器缓存,差异是由于某种原因造成的。清理缓存使这项工作

1 个答案:

答案 0 :(得分:0)

function中,您可以致电this以引用该功能适用​​的元素!

如果您觉得使用jQuery对象更舒服,可以将$()包裹在this$(this))附近。

index的{​​{1}}参数与所选元素列表中元素的位置相对应。

function的{​​{1}}参数与元素相对应,这基本上意味着valuefunction具有相同的值。

演示



this

value