【发布时间】:2011-05-08 11:34:39
【问题描述】:
有什么办法可以修改JQuery each() 访问页面上的元素的顺序吗?
即页面上有 4 个元素,我希望元素 3 先出现,然后是 2,然后是 4,然后是 1。
谢谢
理查德
【问题讨论】:
有什么办法可以修改JQuery each() 访问页面上的元素的顺序吗?
即页面上有 4 个元素,我希望元素 3 先出现,然后是 2,然后是 4,然后是 1。
谢谢
理查德
【问题讨论】:
如果您知道为什么不按顺序引用它们而不使用each。
【讨论】:
.each() 将按照它们在 DOM 中出现的方式传递节点。但它也将index 传递给callback 函数。所以如果你需要采取不同的行动,请检查索引
$('object').each(function(index) {
if( index === 2)
alert('yay');
});
参考:.each()
【讨论】:
$items = $('.my-selector');
my_array = [ $items.get(2), $items.get(1), $items.get(3), $items.get(0) ];
jQuery.each(my_array, callback_function);
请注意,jQuery 对象是 0 索引的。
【讨论】:
假设您重新排序图像。
imgs = $( 'img' );
imgs.eq( 3 ).insertBefore( imgs.eq( 1 ) );
imgs.eq( 1 ).insertAfter( imgs.eq( 4 ) );
应该做的伎俩。
【讨论】: