【问题标题】:Reorder DOM elements order when using jQuery each()使用 jQuery each() 时重新排序 DOM 元素的顺序
【发布时间】:2011-05-08 11:34:39
【问题描述】:

有什么办法可以修改JQuery each() 访问页面上的元素的顺序吗?

即页面上有 4 个元素,我希望元素 3 先出现,然后是 2,然后是 4,然后是 1。

谢谢

理查德

【问题讨论】:

    标签: jquery dom each


    【解决方案1】:

    如果您知道为什么不按顺序引用它们而不使用each

    【讨论】:

      【解决方案2】:

      .each() 将按照它们在 DOM 中出现的方式传递节点。但它也将index 传递给callback 函数。所以如果你需要采取不同的行动,请检查索引

      $('object').each(function(index) {
          if( index === 2)
              alert('yay');
      });
      

      参考:.each()

      【讨论】:

        【解决方案3】:
        $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 索引的。

        【讨论】:

          【解决方案4】:

          假设您重新排序图像。

          imgs = $( 'img' );
          
          imgs.eq( 3 ).insertBefore( imgs.eq( 1 ) );
          
          imgs.eq( 1 ).insertAfter( imgs.eq( 4 ) );
          

          应该做的伎俩。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2013-09-11
            • 2020-08-16
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2016-10-30
            • 2013-06-01
            相关资源
            最近更新 更多