【问题标题】:jquery selectors, how does "a+b+c+d" get interpretted [closed]jquery选择器,“a+b+c+d”如何被解释[关闭]
【发布时间】:2012-04-11 13:58:19
【问题描述】:

“a+b+c+d”是什么意思?和“a + b + c + d”一样吗?我知道“+”是做什么的,但它是从左到右还是从右到左读?如果将“+”改为“:adjacent(selector)”,它看起来会像“a:adjacent(b):adjacent(c)...”还是“a:adjacent(b:adjacent(c... ))”?堆叠它们会让人感到困惑,因为它们看起来与 :xyz() 样式扩展类型不同。

【问题讨论】:

  • 是的,a+b+c+d 与 CSS 或 Sizzle/jQuery 选择器中的 a + b + c + d 相同,如果这就是您所要求的。您是否尝试进行任何测试或研究,为什么会出现这个问题?例如,是什么让您认为它们不同?我不确定您对所有 :adjacent 的要求是什么?

标签: javascript jquery jquery-selectors


【解决方案1】:

a+b+c+d 表示紧跟在c 元素之前的d 元素,紧接着是紧跟在b 元素之前的a 元素。空格在这里无关紧要。我不知道:adjacent 会翻译成什么,因为据我所知,它并不存在。

这里的d 元素将被匹配:

<a></a>
<b></b>
<c>Random stuff in here</c>
<d>Hello</d>

但不在这里:

<a>
    <b></b>
    <c></c>
    <d>Nope.</d>
</a>

【讨论】:

    【解决方案2】:

    它对exact same way 起作用,就像对两个元素 a + b 一样。堆叠元素只是意味着选择器更具体。

    【讨论】:

      猜你喜欢
      • 2011-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多