使用jQuery在超链接中包装元素
我有:使用jQuery在超链接中包装元素,jquery,Jquery,我有: 在某个动作中,我想将整个动作包装成一个超链接,如: <div id="facebook"> <span class="fa-stack fa-lg"><i class="fa fa-circle-thin fa-stack-2x"></i><i class="fa fa-facebook fa-stack-1x"></i></span><br /><span id="soc
在某个动作中,我想将整个动作包装成一个超链接,如:
<div id="facebook">
<span class="fa-stack fa-lg"><i class="fa fa-circle-thin fa-stack-2x"></i><i class="fa fa-facebook fa-stack-1x"></i></span><br /><span id="soc_fb"></span>
</div>
所以,我尝试的是:
<div id="facebook">
<a href="http://www.facebook.com"><span class="fa-stack fa-lg"><i class="fa fa-circle-thin fa-stack-2x"></i><i class="fa fa-facebook fa-stack-1x"></i></span><br /><span id="soc_fb"></span></a>
</div>
$(“#facebook”).prepend(“”);
但这似乎没有任何作用。有什么想法吗?您可以通过以下方式实现:
$("#facebook").prepend('<a href="#" title="Facebook" class="facebook_c">').append('</a>');
previous_dom=$(“#facebook”).html();
$(“#facebook”).html(“”)
您也可以使用wrap
它只包装了#facebook
div
演示:prepend()
和append()
添加完整的元素,而不仅仅是开始/结束标记
应该这样做:
$("#facebook").children().wrapAll('<a href="#" title="Facebook" class="facebook_c">');
$('#facebook').children().wrapAll('');
这将包装div
本身,而不是内容(如OP的示例)。非常好。谢谢,这就是我想要的。。。这是漫长的一天!
$("#facebook").wrap('<a href="#" title="Facebook" class="facebook_c">');
$("#facebook").children().wrapAll('<a href="#" title="Facebook" class="facebook_c">');
$('#facebook').children().wrapAll('<a href="http://facebook.com"></a>');