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

如何用jQuery隐藏www.weert.nl页面左下侧指定列表项?(脚本无效求助)

解决jQuery隐藏指定列表项的问题

排查与修复方案

1. 验证选择器与元素加载时机

  • 先在浏览器控制台执行 console.log($('#evenementenlijst').length),如果返回0,说明#evenementenlijst不存在或拼写错误,需要重新定位列表容器。
  • 若列表是AJAX动态加载的,$(document).ready()执行时元素还未渲染,改用$(window).on('load', function(){ ... }),或用MutationObserver监听容器的DOM变化。

2. 优化文本匹配逻辑

  • 直接全等匹配可能因不可见字符(如特殊空白符)失败,改用宽松匹配:
    // 包含匹配
    if (linkText.includes('kerststal van de zusters birgittinessen')) {
        $(this).hide();
    }
    // 正则忽略大小写与细微字符差异
    if (/kerststal van de zusters birgittinessen/i.test($(this).find('a').text())) {
        $(this).hide();
    }
    

3. 确认元素结构

  • 检查列表项内的文本是否被嵌套标签(如<span>)包裹,在控制台执行$('#evenementenlijst li a').first().html()查看结构,若有嵌套,调整文本获取方式:
    const linkText = $(this).find('a span').text().trim().toLowerCase();
    

4. 强制覆盖样式

  • 若hide()被页面CSS覆盖,直接设置样式或添加隐藏类:
    // 强制隐藏
    $(this).css('display', 'none !important');
    // 或使用页面自带的隐藏类
    $(this).addClass('hidden');
    

5. 延迟执行脚本

  • 针对动态渲染的页面,延迟执行确保元素已加载:
    setTimeout(function(){
        $('#evenementenlijst li').each(function() {
            const linkText = $(this).find('a').text().trim().toLowerCase();
            if (linkText.includes('kerststal van de zusters birgittinessen')) {
                $(this).hide();
            }
        });
    }, 1000); // 根据实际加载时间调整延迟时长
    

调试技巧

  • 在控制台打印所有列表项文本,确认匹配目标:
    $('#evenementenlijst li').each(function(){
        console.log($(this).find('a').text().trim().toLowerCase());
    });
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 10:28:11