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

jQuery toggle()添加的style="display:none"属性无法隐藏元素如何解决

问题排查与修复方案

核心错误

你提到生成的样式属性为style="sidplay:none",这里存在CSS属性拼写错误:控制元素显隐的合法属性是display,写错属性名会导致浏览器无法识别,自然不会触发隐藏效果。

原生jQuery的toggle()方法不会生成错误的属性名,出现该问题可按以下优先级排查:

  • 排查是否有自定义代码、第三方插件重写了jQuery的toggle()方法,导致属性生成逻辑异常
  • 排查目标h3元素是否存在带!important标记的display相关CSS规则,高优先级规则会覆盖行内样式,导致toggle的显隐控制失效

替代实现方案

你可以直接手动控制样式属性,规避toggle方法被篡改的问题:

WikiOption.Elements.searchInput.on("input", (e)=> {
    const searchVal = $(e.target).val().toLowerCase();
    $(".toc-wrap h3").each(function () {
        const matchRes = $(this).text().toLowerCase().includes(searchVal);
        $(this).css('display', matchRes ? 'block' : 'none');
    });
});

其他排查点

  • 确认.toc-wrap h3选择器匹配的是目标控制元素,避免选择器层级错误
  • 可在input事件回调中打印输入值,验证事件绑定、值获取逻辑是否正常运行

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 14:36:01