结果证明jQuery的“隐式循环”是双向的:
<div class="classOne">
some content
</div>
<div class="classOne">
some content 2
</div>
[...]
$(function() { $('hello world').prependTo($('.classOne')); })
在这种情况下,循环将在$('.classOne')
部分发生 - hello world
将添加到两个Div。
我也试过
<div class="classOne">
some content
</div>
<div class="classOne">
some content 2
</div>
<div class="classTwo">
<a href="http://www.google.com">hello Google</a>
</div>
<div class="classTwo">
<a href="http://www.yahoo.com">hello Yahoo</a>
</div>
[...]
$(function() { $('.classTwo').prependTo($('.classOne')); })
并且会有“嵌套循环”...所以2个链接将被添加到两个Divs
所以我想如果我们有
$('.classOne').prepend($('.classTwo')).prepend($('.classThree'))
然后它会像3个嵌套循环?嵌套是否有规则,哪一个是内循环,哪一个是外循环?如果它是
,那么内循环/外循环是什么?$('.classOne').prependTo($('.classTwo')).prependTo($('.classThree'))
答案 0 :(得分:2)
.prependTo()
的每个前任都会附加到传入in you can see the actual jQuery core code here的每个项目中。由于您将jQuery对象传递给.prependTo()
,因此它将查看每个元素,并在链前前缀中添加每个对象的克隆版本。
所以每个.prependTo()
=一个for
循环(当传入jQuery对象时),但它们不是嵌套的。一个的结果只是传递给下一个,但它是一个获取元素的数组,你可以使用.end()
返回前一个数组。
我道歉,如果这不是一个清晰的解释,我意识到这有点奇怪的想到链接...但如果你可以指出任何问题,这留下评论我会尝试更新,以解决任何混乱/我特意错过了部分。