我想问一个关于jQuery的愚蠢问题。如果我有:
<ul>
<li class="ft">
<ul class="sub"><li></li></ul>
</li>
</ul>
我想成为:
<ul>
<li class="ft">
<div class="hello"><ul class="sub"><li></li></ul></div>
</li>
</ul>
如何通过jQuery添加div class =“hello”?
谢谢!
答案 0 :(得分:5)
使用wrap()
$('.sub').wrap('<div class="hello" />');
参考:http://api.jquery.com/wrap/
作为旁注:使用$('.sub')
代替$('ul.sub')
,因为效率更高。见http://jsperf.com/jquery-class-vs-element-class
答案 1 :(得分:2)
$('.sub').wrap('<div class="hello" />');
答案 2 :(得分:2)
$('ul.sub').wrap('<div class="hello">');
答案 3 :(得分:0)
$('li.ft').html('<div class="hello">'+$('li.ft').html()+'</div>');
答案 4 :(得分:0)
使用前置
$('.ft').prepend('<div class="hello"><ul class="sub"><li></li></ul></div>');
答案 5 :(得分:-1)
有很多方法可以在jquery中实现这一点。其中一些涉及你使用DOM遍历在你想要添加之前到达元素并使用jquery来添加它... jquery对这种父,子,sibbling等遍历有广泛的支持......
但最简单的方法是在html标记中手动添加元素,并使用jquery以编程方式添加类属性...
所以在你的jquery中你可以简单地做类似的事情:
的jquery( “#someid”)addclass( “你好”);
希望这有助于......:)
答案 6 :(得分:-3)
$('li.ft').find('div').addClass('hello');