我有一个菜单结构。有以下内容:
<ul id="quicktabs-ileti_im">
<li><a href="#qt-ileti_im-ui-tabs1" tabindex="0" class="">1</a></li>
<li><a href="#qt-ileti_im-ui-tabs1" tabindex="0" class="">2</a></li>
<li><a href="#qt-ileti_im-ui-tabs1" tabindex="0" class="">3</a></li>
</ul>
并希望:
<li><a href="#qt-ileti_im-ui-tabs1" tabindex="0" class=""><span>1</span></a></li>
我的jQuery代码:
$("#quicktabs-ileti_im ul li a").append('<span>');
但结果:
<li><a href="#qt-ileti_im-ui-tabs1" tabindex="0" class="">1<span></span></a></li>
我该如何解决?
答案 0 :(得分:6)
答案 1 :(得分:3)
$("#quicktabs-ileti_im li a").contents().wrap("<span></span>");
或
$("#quicktabs-ileti_im li a").wrapInner("<span/>")
示例:
答案 2 :(得分:2)
你可以按wrapInner()这样做:
jsFiddle Live Demo
$('#quicktabs-ileti_im li a').wrapInner("<span></span>");
答案 3 :(得分:1)
$("#quicktabs-ileti_im > li > a").contents().wrap("<span />");
答案 4 :(得分:1)
您的选择器不正确。
ul
有id= quicktabs-ileti_im
。这意味着该元素可以用两种方式中的任何一种引用。
$('#quicktabs-ileti_im')
$('ul#quicktabs-ileti_im')
这意味着您的选择器应该是......
$('#quicktabs-ileti_im li a')
或只是$('#quicktabs-ileti_im a')
。
至于答案,您可以使用.wrapInner()或.wrap() JQuery函数。
$("#quicktabs-ileti_im a").wrapInner('<span />');
$("#quicktabs-ileti_im a").contents().wrap('<span />');