问题描述
||
我有以下HTML:
<div class=\"accordion\">
<h3>My title</h3>
<div>My content</div>
<h3>My title</h3>
<div>My content</div>
<h3>My title</h3>
<div>My content</div>
</div>
我需要通过jQuery进行的操作是将h3 \和div \分别包装在另一个div class = \“ myDiv \”中,因此最终输出如下所示:
<div class=\"accordion\">
<div class=\"myDiv\">
<h3>My title</h3>
<div>My content</div>
</div>
<div class=\"myDiv\">
<h3>My title</h3>
<div>My content</div>
</div>
<div class=\"myDiv\">
<h3>My title</h3>
<div>My content</div>
</div>
</div>
我将如何使用jquery?
解决方法
这样的事情应该做到:
$(\'.accordion h3\').each(function() {
$(this).nextUntil(\'h3\').andSelf().wrapAll(\'<div class=\"myDiv\"/>\');
});
jsFiddle示例
请参阅API:
nextUntil
andSelf
wrapAll
,尝试这个:
$(\"h3\").each(function(){
$(this).next(\"div\").andSelf().wrapAll(\"<div class=\'myDiv\'></div>\");
});
http://jsfiddle.net/BSQpf/