【问题标题】:How do you use the [attribute=value] selector?你如何使用 [attribute=value] 选择器?
【发布时间】:2011-12-04 10:45:06
【问题描述】:
var prev = b - 1;

var previousImage = $('.header ul.active').find($('li[rel=prev]'));

第一个变量是一个被减1的整数。

名为previousImage 的下一个变量是我遇到的问题。 previousImage 中的每个 lis 都有一个 rel 标签。每个增加 1。我只想选择带有数字 rel 标记的 li(在本例中为变量)。

有人可以向我解释一下如何使用 [rel=ATTRIBUTE] 选择器吗?

【问题讨论】:

    标签: jquery jquery-selectors attributes css-selectors


    【解决方案1】:

    不要使用另一个 jquery 对象,你可以在一个简单的调用中完成所有你想做的事情。

    var previousImage = $('.header ul.active li[rel=' + rel + ']');
    

    【讨论】:

      【解决方案2】:
      var previousImage = $('.header ul.active').find($('li[rel="' + prev + '"]'));
      

      请注意,[attribute=value] 选择器要求将值 Part 括在双引号中,如下所示:

      [attribute="value"]
      

      【讨论】:

      • 完美答案,效果很好。我很困惑,因为当你分配一个 rel 属性时,你会这样做, .attr('rel',ATTRIBUTE);那种让我有点震惊。但是,是的,谢谢!
      【解决方案3】:
      var previousImage = $('.header ul.active').find($('li[rel="'+prev+'"]'));
      

      您使用了字符串 prev 而不是变量。

      在等号选择器中也必须使用引号。

      【讨论】:

        【解决方案4】:

        尝试使用.next() 这将帮助你我猜http://api.jquery.com/next/ 你只会使用$('li').next() 就是这样

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-07-08
          • 2018-07-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-11-30
          相关资源
          最近更新 更多