[英]jquery How do I add a class to span within a dl based on the text it contains?
我希望能够将class =“ st_sharethis”添加到菜单链接:在此站点上告诉朋友http://www.easyspacedesign.com/fh/ConnectBell_/ 。 在我们使用的cms中,无法将特定的类或id添加到菜单链接中,因此必须使用jquery来完成。
因此,我将不得不基于标签内的span标签内的文本来执行此操作。
到目前为止,我已经尝试过:
$('.main_menu span:contains("Tell A Friend")').attr('class','st_sharethis');
$('.main_menu span').each(function ()
{
if ($(this).text() == "Tell A Friend")
$(this).attr('id','rev3');
}
都没有奏效。
如果此菜单项始终是最新的:
$('#menu dl dt:last a').addClass('myclass');
另外,您在此菜单项last
有特定的班级,因此您可以:
$('dt.last').addClass('myClass');
或者,您可以仅测试链接的内容:
$('#menu dl dt a span:contains("Tell A Friend")').parent().addClass('myClass');
以下内容将一个类和id添加到该元素。
$('.main_menu span:contains("Tell A Friend")')
.addClass('st_sharethis')
.attr('id', 'rev3');
您的代码很好,您只需添加“);” 在末尾!
$('.main_menu span:contains("Tell A Friend")').attr('class','st_sharethis');
$('.main_menu span').each(function ()
{
if ($(this).text() == "Tell A Friend")
$(this).attr('id','rev3');
}
); // ADD this line !
但是,当然最好只链接命令:
$('.main_menu span:contains("Tell A Friend")')
.attr('class','st_sharethis')
.attr('id','rev3');
这适用于您的标记:
$('#menu span:contains("Tell A Friend")')
.addClass('st_sharethis')
.attr('id','rev3');
实时示例: http : //jsfiddle.net/ydFFR/
如果是最后一个,请尝试
$('a.main_menu.last').find('span').addClass('st_sharethis');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.