3

我试图隐藏一个div,如果一个特定的词在另一个里面div

if (jQuery("div.contactUs:contains('contact')")) {
jQuery(".hideThis").css("display","none");
}

但这似乎不起作用。有任何想法吗 ?

4

2 回答 2

7

您需要检查length返回的 jQuery 对象:

if (jQuery("div.contactUs:contains('contact')").length) {
    jQuery(".hideThis").css("display","none");
}

这样做的原因是 jQuery 返回一个对象,即使没有找到匹配的元素,也永远不会计算为false.

另请注意,您可以使用hide而不是css,只是为了使您的代码更短一点:

if (jQuery("div.contactUs:contains('contact')").length) {
    jQuery(".hideThis").hide();
}
于 2012-06-28T10:45:51.423 回答
4

试试这个,这可以显示它是如何工作的

if (jQuery("div.contactUs").text().indexOf('contact') != -1) {

jQuery(".hideThis").css("display","none");

}
于 2012-06-28T10:45:04.233 回答