[英]Wrap a span around link text with jQuery
如果父元素具有某个类,我想动态地在菜单链接中使用跨度包装文本。
我有的:
<div class="mt-menu-container block">
<ul id="menu" class="sf-menu sf-js-enabled">
<li><a href="#">MenuItem</a></li>
</ul>
</div>
我想做的是,如果第1行的父元素具有类“ block”,我希望其中的文本“ MenuItem”用span包裹起来,那么我会得到如下信息:
<div class="mt-menu-container block">
<ul id="menu" class="sf-menu sf-js-enabled">
<li><a href="#"><span>MenuItem</span></a></li>
</ul>
</div>
我尝试过的是(请不要笑):
// Menu Block Style
if (jQuery('mt-menu-container.block')) {
$('#menu > li > a').each(
function(){
$(this).wrap('<span></span>');
});
}
这没有用,因为在许多级别上可能都错了,但是您将领会到它的要点
jQuery具有hasClass函数。 因此,要验证它是否具有某个类,只需使用:
$('.mt-menu-container').each(function(){
if($(this).hasClass('block')) {
$(this).find('a').each(function(){
$(this).wrapInner('<span></span>');
});
}
});
试试: if (jQuery('mt-menu-container').hasClass('.block'))
不是if (jQuery('.mt-menu-container.block'))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.