【发布时间】:2016-09-06 01:11:17
【问题描述】:
当我试图在我的代码中总结事情时,我发现当我写这样的东西时:
var $elements = $('div');
for ( var i = 0, $element; $element = $elements.eq(i); i++ ) {
$element.text( 'Hello' );
}
循环永远不会结束。我想知道,为什么会这样。如果我在条件内调用函数会导致错误,或者 jQuery 只是没有返回准确的数据,因此循环条件无法识别当前索引?
【问题讨论】:
-
在
i声明中,您还可以将 $element 重新分配给 i -
$elements.eq(i) 是什么意思?它的输出应该是什么?
-
$element = $elements.eq(i)应该返回包装在 jQuery 对象中的集合中的ith 元素。我很确定 OP 希望在没有ith 元素后会失败。 -
我的输出应该是每个 div 元素的 jQuery 对象。我试图避免在循环内分配变量,而不是在条件中。当然我可以只遍历元素数组,但是我仍然必须创建一个 jQuery 对象来访问 jQuery 方法。
-
你为什么要重新发明 jQuery 的每个?
标签: javascript jquery loops iteration