【问题标题】:How to automatically assign different Z-Index Values to multiple elements with jQuery如何使用 jQuery 自动为多个元素分配不同的 Z-Index 值
【发布时间】:2010-03-31 08:50:23
【问题描述】:

例如我有标记

<div>
     <img src="#" alt=""/>
     <img src="#" alt=""/>
     <img src="#" alt=""/>
<div>

我想选择 $('div img') 然后给每个人分配一个 z-index 值,所以第一个是 3,第二个是 2,第三个是 1。这对 jQuery 来说很简单吗?

谢谢

【问题讨论】:

    标签: jquery foreach


    【解决方案1】:

    这应该可以,点击预览按钮查看 demo here

    var total = $('div img').size();
    
    $('div img').each(function(index){
      $(this).css('z-index', total - index);
    });
    

    【讨论】:

    • $('div img') 未缓存 = 低效慢速 JavaScript。不是我对你投了反对票,所以别再抱怨了。
    • @Coronatus:这个问题不是关于加速和优化提问者的代码,这有点乏味,最后我也没有投票给你。如果您认为提问者担心速度,您可以在自己的答案中显示缓存内容。
    【解决方案2】:

    是的,使用每个功能 - http://api.jquery.com/each/

    【讨论】:

      【解决方案3】:
      i = 3;
      
      $('div img').each(function()
      {
          $(this).css('z-index', i);
      
          i -= 1;
      });
      

      【讨论】:

      • $('div img') 未缓存 = 低效慢速 JavaScript。您应该为此编辑解决方案。
      • 它只被调用一次,所以不需要缓存。获得线索。
      • 那么你不应该向其他人建议相同的内容。试着做一个负责任的帮手,你来这里是为了帮助别人,而不仅仅是为了获得声望点。我希望你在我的博客上阅读我关于技巧的 SO 技巧的文章。谢谢
      • Sarfraz,说话前请先了解一下你在说什么。您的答案确实需要缓存,因为选择器已完成两次,而我的没有。
      猜你喜欢
      • 2011-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-07
      • 1970-01-01
      • 2021-07-02
      • 2013-07-21
      • 1970-01-01
      相关资源
      最近更新 更多