[英]wrap content in a div using jquery
我正在尝试将内容包装在 div 中,但问题是 html 页面不可编辑,所以我正在尝试其他方式,使用 jQuery 将所有内容包装在div
以下是html
结构
$(document).ready(function() { $("hr").before("<div class=wrapElement>"); $("#disqus_thread").before("</div>"); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <hr> <h4>Title Here</h4> <p> </p> <p> </p> <p> </p> <div id="disqus_thread"></div>
问题打开div
放在正确的位置,但关闭 div 不在正确的位置,它应该在div id="disqus_thread"
上方,但它不在那里,我如何将它放在这个位置?
jQuery 版本是 1.12.4
提前致谢
使用nextUntil()
方法获取所有元素到 div 并使用wrapAll()
方法使用div
元素包装它们。
$(document).ready(function() {
$("hr").nextUntil("#disqus_thread") // get elements from hr upto the previous element of #disqus_thread
.wrapAll("<div class=wrapElement></div>"); // wrap all elements using div
});
$(document).ready(function() { $("hr").nextUntil("#disqus_thread").wrapAll("<div class=wrapElement></div>"); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <hr> <h4>Title Here</h4> <p> </p> <p> </p> <p> </p> <div id="disqus_thread"></div>
如果你有一个容器,你可以使用 jQuery wrapInner()方法,很容易:
$( "body" ).wrapInner( "<div class='wrapElement'></div>");
或者,您可以只使用内置的 jQuery 函数:
这是一个小提琴: https : //jsfiddle.net/uhr4kuk6/5/
$(document).ready(function() { $('hr').remove(); $('h4').wrap('<div class="wrapElement">').prepend('<hr>'); $('p').each(function() { var getContentWithTags = $(this).clone(); $('.wrapElement').append(getContentWithTags); $(this).remove(); }) });
.wrapElement { background: red; padding-top: .5em; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> <hr> <h4>Title Here</h4> <p>Paragraph 1</p> <p>Paragraph 2</p> <p>Paragraph 3</p> <div id="disqus_thread"></div>
假设您的内容在 body 标签内:
var mainhtml= $('body').find('*').not('#thread_content').html()
$('#thread_content').html(mainhtml);
试试这个..
<hr>
<h4>Title Here</h4>
<p> </p>
<p> </p>
<p> </p>
<div id="disqus_thread"></div>
$(document).ready(function() {
$("body").wrapInner("<div class=wrapElement></div>");
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.