我有以下一点HTML,我无法控制:
<div id="sub-nav">
Vendita diretta
<ul class="cms-nav-sidebar">
<li class="icl-level-1"><a href="/tasting/">Degustazioni</a></li>
</ul>
</div>
我需要在div
标记的“子导航”<h1>
中包装第一段文字。到目前为止,我已经得到了这个:
$('#sub-nav').children().wrap("<h1></h1>");
但是,这会包含div
标记中h1
内的所有元素。如何精确定位第一个文本节点并将其包装在h1
?
由于 戴夫
答案 0 :(得分:1)
使用Blazemonger评论中的链接...
$('#sub-nav').contents(':not(ul)').wrap("<h1></h1>");
......应该适合你的情况。
答案 1 :(得分:0)
$('#sub-nav').contents().filter(function(){
return this.nodeType === 3; //text node type
}).eq(0).wrap("<h1></h1>");