我想将h3标记和div包含在一个带有follow数组的div的div下如何用jQuery实现呢?
继承了我目前的代码:
$sections = array('section1','section2','section3');
<h3>Section Title 1</h3>
<div class="options_1">
<p>Some Options</p>
</div>
<h3>Section Title 2</h3>
<div class="options_2">
<p>Some Options</p>
</div>
<h3>Section Title 3</h3>
<div class="options_3">
<p>Some Options</p>
</div>
这就是我想要完成的事情
$sections = array('section1','section2','section3');
<div class="section1">
<h3>Section Title 1</h3>
<div class="options_1">
<p>Some Options</p>
</div>
</div>
<div class="section2">
<h3>Section Title 2</h3>
<div class="options_2">
<p>Some Options</p>
</div>
</div>
<div class="section3">
<h3>Section Title 3</h3>
<div class="options_3">
<p>Some Options</p>
</div>
</div>
非常感谢任何帮助。 感谢
答案 0 :(得分:1)
var $sections = ['section1', 'section2', 'section3'];
$("h3").each(function(idx){
var next = $(this).next();
var c = $sections[idx];
$(this).wrap('<div class="'+c+'" />').parent().append(next);
});
答案 1 :(得分:0)
假设您希望新div的类名是<h3>
标记的文本,您可以这样做:
$("h3").each(function() {
var text = $(this).text();
var section = $('<div class="' + text + '"></div>');
section.insertBefore(this);
var next = $(this).next();
section.append(this).append(next);
});
这将获取每个<h3>
的文本,创建一个新的div作为类名,将其插入<h3>
标记之前,然后插入<h3>
和以下的兄弟对象作为新div的孩子。