You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现页面存在Mitgliedsnummer时隐藏指定div?当前div始终隐藏

问题排查与修复方案

嘿,我一眼就看到你代码里的问题啦——你的条件判断逻辑完全不对!你直接把字符串 "p:contains(Mitgliedsnummer)" 丢进if语句里,这在JS里会被当成永远为真的真值,所以不管页面里有没有"Mitgliedsnummer",代码都会执行.hide(),这就是那个div一直藏着的原因。

修正后的代码

$(function () {
    // 检查页面中是否存在包含指定文本的p元素
    const hasTargetText = $("p:contains('Mitgliedsnummer')").length > 0;
    if (hasTargetText) {
        $(".femanager_moduleSysDmailNewsletter").hide();
    } else {
        $(".femanager_moduleSysDmailNewsletter").show();
    }
});

核心修正点解释

  • 你需要用jQuery选择器实际查询页面中的元素,而不是用字符串当条件。$("p:contains('Mitgliedsnummer')")会返回所有包含目标文本的p元素集合,通过判断集合的length是否大于0,才能准确知道页面里有没有你要找的字符串。
  • 记得给contains里的文本加上单引号,这是jQuery选择器的规范写法,能避免潜在的语法问题。

额外小提示

如果你不确定目标文本是不是只出现在p标签里,可以把选择器改成更通用的$("*:contains('Mitgliedsnummer')"),这样会检查页面中所有包含该文本的元素。不过这种方式性能稍差,如果能确定标签类型,尽量指定具体标签会更高效。

内容的提问来源于stack exchange,提问作者Robert

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 09:18:27