我想用 div 包装文本,有人可以帮助我如何做到这一点。我无法更改我的 html 结构,因此我需要使用 jquery。
这是我的html代码
<div>
<h3>Title 1</h3>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
<br />
<br />
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
<h3>Title 1</h3>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
<br />
<br />
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
</div>
这里是js
$('h3').each(function(){
$(this).nextUntil('h3')
.wrapAll('<div>').parent().add(this)
.wrapAll('<li>').parent().appendTo(h3);
});
提前致谢
最佳答案
你可以这样做
$('div').contents().filter(function() {
return this.nodeType === 3;
}).wrap('<div></div>');
这将选择所有纯文本并用 div 元素将其包裹
编辑
这样就可以了,
$('div').contents().filter(function() {
return this.nodeType === 3;
}).wrap('<div class="temp"></div>');
$("h3").each(function() {
$(this).nextUntil("h3").wrapAll("<div class='wraper'></div>");
});
$(".temp").contents().unwrap();
关于javascript - 使用 jquery 在 <h3> 标签打开和关闭 </div> 之前添加 <div> </h3> 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26500584/