【问题标题】:If div contains word "example" , then addClass display none to another div如果 div 包含单词 "example" ,则 addClass 显示 none 到另一个 div
【发布时间】:2012-06-29 20:54:09
【问题描述】:

如果某个特定单词在另一个 div 中,我正在尝试隐藏 div

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

但它似乎不起作用。有什么想法吗?

【问题讨论】:

    标签: jquery if-statement contains


    【解决方案1】:

    试试这个,这可能会显示 how it works

    if (jQuery("div.contactUs").text().indexOf('contact') != -1) {
    
    jQuery(".hideThis").css("display","none");
    
    }
    

    【讨论】:

      【解决方案2】:

      你需要检查返回的jQuery对象的length

      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();
      }
      

      【讨论】:

      • 非常感谢詹姆斯,它就像一个魅力。感谢您的解释。现在我知道了... :)
      猜你喜欢
      • 2020-07-02
      • 2012-07-11
      • 1970-01-01
      • 1970-01-01
      • 2016-12-17
      • 2019-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多