出于某种原因,我不能在此代码中使用$(this):
if ($('a:contains("Abb")').length > 0) {
$(this).addClass('hello');
}
这是浏览器返回的内容:
我想在<a>
标记中添加一个类,如果它包含内容&#34; Abb&#34;。我怎么能这样做?
答案 0 :(得分:2)
您不需要检查长度。只需使用add class。
$('a:contains("Abb")').addClass('hello');
这会将课程hello
添加到包含<a>
的所有Abb
。
答案 1 :(得分:0)
您不在函数中(if / else语句不创建范围),因此 this
指的是您提供的代码范围之外的内容。如果没有包装它的功能,它会引用窗口,在网络环境中。
所以在这种情况下,你不能在这里使用this
,你也不需要它。
if ($('a:contains("Abb")').length > 0) {
$('a:contains("Abb")').addClass('hello');
}
一些文档:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/this
答案 2 :(得分:0)
$('a:contains("Abb")').each(function(){
$(this).addClass('hello');
});