使用 jQuery 匹配两个 HTML 元素之间的所有内容



我有空的<span>元素,可以在DOM中的任何位置。他们有一个特定的id,如<span class="start" id="V.64"/><span class="end" id="V.64.end"/>。因此,我可以通过id确定起点和终点。我现在想强调这两个<span>要素之间的一切。有没有办法用jQuery做到这一点?

示例 HTML:

<html>
<head>
<title></title>
</head>
<body>
<p class="upper-case">
<b>In Matutinis</b>
<span class="ab">
<b data-toggle="tooltip">INV</b>
<i class="incipit">Rex noster</i>. <span class="phenomena">*</span>
</span>
<span class="ab">
<span class="start" id="V.112"/>
</span>
<span class="ab">In Secundo Nocturno <b data-toggle="tooltip" data-original-title=""
title="">AN</b>
<i class="incipit">Nox praecessit</i>. <span class="end" id="V.112.end"/><b
data-toggle="tooltip" data-original-title="" title="">RP</b>
<i class="incipit">Civitas Hierusalem</i>.
<i class="incipit"
>Sicut mater</i>. <b data-toggle="tooltip" data-original-title="" title=""
>RV</b>
<i class="incipit">Deus a Libano veniet</i>. <span class="start" id="V.114"/>
</span>
<span class="ab">In Tertio Nocturno
<span class="end" id="V.114.end"/>
<b data-toggle="tooltip">EV</b>
<i class="incipit">Erunt signa in sole</i>. <b data-toggle="tooltip">RP</b>
</span>
</p>
</body>

请注意,开始和结束跨度可以位于 DOM 中的任何位置。不仅仅是兄弟姐妹!非常感谢您的回答!

是的,使用.nextUntil((是可能的

例如

var everythingInBetween = $('#V\.64.start').nextUntil('#V\.64.end').andSelf();

请注意,您必须转义 id 选择器中的"."。

最新更新