首页 > 解决方案 > 一两分钟后 JQuery 不起作用

问题描述

我的 JQuery 可以很好地让徽标弹出移动导航,但几分钟后它就不起作用了。单击徽标时,它不再更改 UL 的显示这是我的代码:

$(document).ready(function() {
  checkSize();
});

function checkSize(){
  if ($("ul, #left img:nth-of-type(2)").css("display") == "none" ) {
    $("#click").on('click',function() {
      $("ul, #left img:nth-of-type(2)").toggleClass("show-items");
    });
  }
}

谢谢你。

标签: javascriptjquery

解决方案


来自 jQuery 文档

包含在 $( document ).ready() 中的代码只会在页面文档对象模型 (DOM) 准备好执行 JavaScript 代码时运行。

您的 jQuery 可以工作,只有您指定运行一次。

更新:

要在每次窗口更改大小时运行脚本,请使用.resize()

当浏览器窗口的大小改变时,resize 事件被发送到 window 元素:

// run once the document is lodaded
$(document).ready(checkSize);

// run on resize
$( window ).resize(checkSize);

推荐阅读