我正在使用用户脚本与第三方网站进行互动,因此无法控制其布局方式。
它有一个列表,但是在视觉上,列表中的每个元素都不包含在单个元素中,而是在DOM中表示为几个兄弟内联元素的“运行”。兄弟姐妹的每一轮都由<br>
分开。
我正在寻找能够在单个jQuery对象中选择任何此类运行的选择器。这是格式的抽象:
<div class="list">
<a href="#" class="foo">Jack</a> <span class="bar">77</span><br>
<a href="#" class="foo">Fred</a> <span class="bar">23</span><span class="bar">11</span><br>
<a href="#" class="foo">Bob</a> <span class="bar">101</span><br>
<a href="#" class="foo">Joe</a> <span class="bar">12</span><br>
</div>
因此,一种伪正则表达式表示法中的模式总是:
foo
bar
{0,2}
br
选择器是否包含最终br
并不重要,但它必须包含锚,后跟0,1或2 bar
s。如果更容易做出选择0或更多bar
的东西,那么这也很好,尽管在DOM中永远不会超过两个。
由于它在元素之间使用不间断的空格,所以选定的jQuery对象也包含它们可能很重要。
(我将重新排列列表中的项目,以便能够将它们视为单位。这也是一个很好的jQuery学习练习!)