我对jQuery有疑问。
例如,我有以下结构:
<div class="page">
<p>Lorem ipsum....</p>
<p>Lorem ipsum....</p>
...
</div>
我需要把它变成:
<div class="page">
<p>Lorem ipsum....</p>
</div>
<div class="page">
<p>Lorem ipsum....</p>
</div>
...
将div分为两个(或更多)。我该怎么办?
答案 0 :(得分:3)
使用unwrap()
然后再次wrap()
<div class="page"></div>
function splitDiv() {
$("p").unwrap().wrap("<div class='page'></div>");
}
&#13;
.page {
border: 2px solid green;
margin: 4px;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="page">
<p>Lorem ipsum....</p>
<p>Lorem ipsum....</p>
</div>
<button onclick="splitDiv()">Split into diffrent <b>Divs</b></button>
&#13;
答案 1 :(得分:1)
你可以循环每个p
然后dinamicaly添加新的div
并附加p
$('div p').each(function(ix, el){
var tmp = $('<div class="page"/>');
$('body').append( $(tmp).append( $(el) ) );
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="page">
<p>Lorem ipsum....</p>
<p>Lorem ipsum....</p>
</div>
答案 2 :(得分:0)
动态可以分割Html标签。我只是修改一些代码。 Thanx。
function splitHtml(tag1,tag1class, tag2) {
$(tag2).unwrap().wrap(tag1);
}
&#13;
.page {
border: 2px dotted gray;
margin: 4px;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="page">
<p>Lorem ipsum....</p>
<p>Lorem ipsum....</p>
</div>
<button onclick="splitHtml('<div class=page>','page','p')">Split into diffrent <b>Divs</b></button>
<button onclick="splitHtml('<H1 class=page>','page','p')">Split into <b>H1</b></button>
&#13;