2

我有一个菜单结构。具有以下内容:

<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>

我该如何解决?

4

5 回答 5

6

尝试:

$("#quicktabs-ileti_im li a").wrapInner('<span>');

有关文档,请参见此处

于 2013-05-08T12:42:16.657 回答
3

你想使用wrapwrapInner

$("#quicktabs-ileti_im li a").contents().wrap("<span></span>");

或者

$("#quicktabs-ileti_im li a").wrapInner("<span/>")

例子:

于 2013-05-08T12:43:42.857 回答
2

你可以通过wrapInner()来做到这一点:

jsFiddle Live Demo

$('#quicktabs-ileti_im li a').wrapInner("<span></span>");
于 2013-05-08T12:42:53.243 回答
1
$("#quicktabs-ileti_im > li > a").contents().wrap("<span />");
于 2013-05-08T12:47:43.277 回答
1

您的选择器不正确。

ulid= 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 />');
于 2013-05-08T12:53:21.610 回答