JQuery - 如何在一些html中添加单个html标签?

Kei*_*gan 2 html jquery prepend

我想在下面的文本之前插入一个<span>(在LINK之前):

<li><a href="">LINK</a></li>
Run Code Online (Sandbox Code Playgroud)

所以,上面变成了

<li><a href=""><span>LINK</a></li>
Run Code Online (Sandbox Code Playgroud)

这是我的JQuery代码:

$('#mainnav li a').prepend('<span>');
Run Code Online (Sandbox Code Playgroud)

当我在firebug中查看代码之后,我知道<span></span>,如何才能获得开始span标记而不是结束标记?

cle*_*tus 6

首先,你想要的是格式错误的HTML.jQuery即使不是不可能创建它也会变得困难.我建议只用一步而不是多步.尝试:

$("li > a").each(function() {
  $(this).contents().wrapAll("<span>");
});
Run Code Online (Sandbox Code Playgroud)

输入:

<ul>
  <li><a href="...">testing</a></li>
  <li><a href="...">rich <b>content</b> with <i>inner tags</i></a></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

输出:

<ul>
  <li><a href="..."><span>testing</span></a></li>
  <li><a href="..."><span>rich <b>content</b> with <i>inner tags</i></span></a></li> 
</ul>
Run Code Online (Sandbox Code Playgroud)