【问题标题】:jQuery: select an element's class and id at the same time?jQuery:同时选择一个元素的类和id?
【发布时间】:2010-12-28 23:52:28
【问题描述】:

我有一些链接,我想同时选择 class 和 id。

这是因为我有两种不同的行为。当一类链接有一个类名时,它们以一种方式表现,当相同的链接类得到另一个类名时,它们的行为不同。类名用jquery切换。

所以我必须能够同时选择链接类和 id。这可能吗?

我试过了:

 $("a .save #country")

没有任何结果。

【问题讨论】:

    标签: jquery dom jquery-selectors css-selectors


    【解决方案1】:

    只是补充一点,亚历克斯提供的答案对我有用,而不是作为答案突出显示的答案。

    这个不适合我

    $('#country.save') 
    

    但是这个做到了:

    $('#country .save') 
    

    所以我的结论是使用空间。现在我不知道它是否适用于我正在使用的新版本的 jQuery(1.5.1),但无论如何希望这对我遇到过类似问题的任何人都有帮助。

    编辑:解释的全部功劳(在对亚历克斯回答的评论中)归于 Felix Kling,他说:

    空格是后代选择器,即 A B 的意思是“匹配所有符合条件的元素 匹配 B 是匹配 A 的元素的后代”。AB 的意思是“全选 匹配 A 和 B 的元素”。所以这真的取决于你想要实现的目标。#country.save#country .save 不等价。

    【讨论】:

    • 你说的问题是“countery”而不是“country”吗?
    【解决方案2】:

    你可以这样做:

    $("#country.save")...
    

    $("a#country.save")...
    

    $("a.save#country")...
    

    随你喜欢。

    所以是的,您可以指定一个选择器,该选择器必须匹配 ID 类(以及可能的标签名称和您想要添加的任何其他内容)。

    【讨论】:

    • 所以基本上它是这样的:$("#a .b") 表示元素内部具有 id a 的类 b 的元素。 $("#a.b") 表示具有类 b 和 id a 的元素。诀窍是#a 和 .b 之间的空格
    • 必须注意在上课前使用 id 选择器,否则它不起作用。示例:$(".save#country")... 不返回结果。
    【解决方案3】:

    这段代码怎么样?

    $("a.save#country")
    

    【讨论】:

      【解决方案4】:

      最终应用与 css 相同的规则。

      所以我认为this reference 可能会有一些有价值的用途。

      【讨论】:

      • 能否总结一下参考资料的内容?
      • 其实根据api.jquery.com/category/selectors jQuery 有一些自己的选择器;此外,它实际上并没有说支持所有 CSS 1-3 选择器...
      • @SamB 你是对的,但是它确实说它借用自 CSS 1-3 并添加了自己的。我仍然认为 W3C 资料的链接对本次讨论有效。
      【解决方案5】:

      在id和类标识符之间添加空格时会起作用

      $("#countery .save")...

      【讨论】:

      • 实际上这对我有用,因为它不像 $('#countery.save') 那样工作,所以谢谢!
      • 我发现有时它对空间很挑剔。像 $(.selector > .item#id) 有效,但 $(.selector > .item #id) 无效。
      • 空格是后代选择器,即A B的意思是“匹配所有匹配B的元素,它们是匹配A的元素的后代”。 AB 表示“选择所有匹配 A 和 B 的元素”。所以这真的取决于你想要实现什么。 #countery.save#countery .save 不等价。
      【解决方案6】:
      $("a.save, #country") 
      

      将同时选择“a.save”类和“国家”id。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2010-12-04
        • 1970-01-01
        • 1970-01-01
        • 2011-09-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多