用于隐藏某些元素但不隐藏内部具有p元素的Javascript代码

时间:2019-07-04 19:29:18

标签: php wordpress

您好,当我在dom中有特定关键字时,我正在尝试编写不显示某些内容的javascript。但是我不想在这些类中的

元素中显示的关键字不显示任何内容。例如

if ($("div[class*='artist']").length || $("div[class*='designer']").length) {
            jQuery("div[class*='artist'], div[class*='designer']").each(function () {
                if (jQuery(this).text().toLowerCase().indexOf("firstword") !== -1 || jQuery(this).text().toLowerCase().indexOf("secondword") !== -1) {
                    jQuery(this).hide();
                    console.log(this);
                }
            });
        }

所以我知道这段代码可以很好地工作,但是我遇到了问题,因为向我隐藏了更多我想要的东西。

1 个答案:

答案 0 :(得分:0)

您可以使用find函数来排除带有if ($("div[class*='artist']").length || $("div[class*='designer']").length) { jQuery("div[class*='artist'], div[class*='designer']").each(function () { var hasPTag = $(this).find('p'); if ((jQuery(this).text().toLowerCase().indexOf("firstword") !== -1 || jQuery(this).text().toLowerCase().indexOf("secondword") !== -1) && hasPTag.length == 0) { jQuery(this).hide(); console.log(this); } }); } 标签的div,如下所示:

ObjectAnimator

我希望这会有所帮助。