代码之家  ›  专栏  ›  技术社区  ›  ozke

jQuery-一次调用中有多个选择器和多个值

  •  2
  • ozke  · 技术社区  · 16 年前

    我想知道是否有一种方法可以在jQuery中使用多个选择器,并在一个调用中为它们设置不同的值。

    $(selector1, selector2, selector3, ...).css({left:[532, 112, 453, ...]});
    

    编辑时间: 我只想说清楚你只能打电话 .css文件

    再次编辑以澄清: 我这样问是因为,例如,如果我调用animate()。。。我想保留一个唯一的同步呼叫/循环。

    4 回复  |  直到 16 年前
        1
  •  3
  •   Nick Craver    16 年前

    .css() (或任何其他)函数不知道您所在的元素在选择器中的位置。

    全部的 位置,那它该怎么办?

    例如:

    $("#div, .class1, .class2").css({left:[532, 112, 453]});
    

    在这个HTML上应该做什么:

    <div id="div" class="class1 class2"></div>
    <div id="div2" class="class2 class1"></div>
    

    你知道它很快变得混乱,所以不,没有这样的支持。

    .css() does take a functio n、 像这样:

    $("#div, .class1, .class2").css('left', function(i, val) {
      //return new left property here
    });
    

    但这些元素是按照它们在 文件

        2
  •  1
  •   Tim Cooper    14 年前

    我想唯一的办法就是 .each()

    $(selector1, selector2, selector3).each(function(idx, element){
    
      switch(idx)
    {
       case : 0
          $(element).css('left', '345');
          break;
       case: 1
          $(element).css('left', '456');
          break;
    }
    });
    

    编辑:

    $(document).ready(
        function() {
    
    
        $("div#hello, div#hello1").css('background-color', function(idx, element){
    
            switch(idx)
            {
                case 0:
                    return 'red'
    
                case 1:
                    return 'green'
            }
        });
    
    });
    

    HTML格式:

    <div id="hello">
        <span>test</span>
    </div>
    
    <div id="hello1">
        <span>test2</span>
    </div>
    
        3
  •  0
  •   Matt user129975    16 年前

    如果只想更改一个css值:

    var values = [532, 112, 453, ...];
    $(selector1, selector2, selector3, ...).css('left', function (i, current) {
        return values[i];
    });
    

    你为什么要这样做?

        4
  •  0
  •   selvin    16 年前

    否-不可能(在您澄清允许只调用一次.css()之后)

    请注意: 1.选择器1、选择器2、选择器3可以匹配el1、el4、el5、el6 2.仅仅因为在一个函数调用之后做了一些事情并不意味着它是有效的 3.按你的要求去做并不能使代码更容易阅读——这对left来说是有意义的,但是其他一些属性呢