0

我正在开发一个用户脚本以与第 3 方网站进行交互,因此我无法控制它的布局方式。

它有一个列表,但从视觉上看,列表中的每个元素都没有包装在单个元素中,而是在 DOM 中表示为几个同级内联元素的“运行”。每个兄弟姐妹的运行由一个<br>

我正在寻找一个能够在单个 jQuery 对象中选择任何此类运行的选择器。这是格式的抽象:

<div class="list">
  <a href="#" class="foo">Jack</a>&nbsp;<span class="bar">77</span><br>
  <a href="#" class="foo">Fred</a>&nbsp;<span class="bar">23</span><span class="bar">11</span><br>
  <a href="#" class="foo">Bob</a>&nbsp;<span class="bar">101</span><br>
  <a href="#" class="foo">Joe</a>&nbsp;<span class="bar">12</span><br>
</div>

所以一种伪正则表达式符号中的模式总是:

foo bar {0,2} br

选择器是否包含 final 无关紧要,br但它必须包含后跟 0、1 或 2bar的锚点。如果制作选择 0 或更多的东西更容易bar那也没关系,尽管 DOM 中永远不会超过两个。

因为它在元素之间使用不间断的空格,所以选定的 jQuery 对象也包括它们可能很重要。

(我将重新排列列表中的项目,以便能够将它们视为单位。这也是一个很好的 jQuery 学习练习!)

4

0 回答 0