如何删除非被动事件侦听器?

How to remove non-passive event listener?

我正在开发代码编辑器。实际上,我已经到了 2.0.1 版的末尾,这是一个包含新功能的重要版本。但是就在将 Google Chrome 浏览器更新到他的最新版本(64 ...)之前,我对我的代码做了一些更改,但我不知道它是什么了。

Chrome 更新后,当我打开编辑器文件时,无法点击 javascript 按钮或链接。这也不适用于其他浏览器。 I took a screen shoot of my console.

有我使用的事件:clickloadbeforeunloadreadykeyupkeydownonline, offline, mousedown, mousemove, mouseover, mouseout, mouseup, touchstart, touchmovetouchend 和 CodeMirror 事件。

谁能帮我删除这些非被动事件侦听器,它们会阻止我的应用程序上的事件?

我在-

上设置了一个断点
  $("span.jdb-toggle-fullScreen").click(function(){

它从来没有命中,所以我在包含函数的开头设置了一个断点 -

  $(".jdb-author-name").html(jdb.info.detail.author.name[1]).on("click", function() { window.open(jdb.info.detail.author.url); });

它确实成功了。我跨过了这些线,直到我得到这段代码 -

  // Say Hi Coder every 24h.
  if (jdb.cookie("Hello_World")) { return; }

条件总是 returns 在你显示一些 message/toast 之后,我假设当你在接下来的 24 小时内再次加载页面时,你将永远不会继续 运行ning包含函数,您将永远不会看到将事件侦听器添加到这些按钮的代码行。

解决方案-

变化-

  // Say Hi Coder every 24h.
  if (jdb.cookie("Hello_World")) { return; }
  iziToast.show({
    title: "Bonjour, cher Codeur! ",
    timeout: false, position: "topRight",
    onClosing: function() {
      jdb.cookie("Hello_World", "Yes", {
        expires: 1,
        path: "/"
      });
    }
  });

到-

  // Say Hi Coder every 24h.
  if (!jdb.cookie("Hello_World")) {
    iziToast.show({
      title: "Bonjour, cher Codeur! ",
      timeout: false, position: "topRight",
      onClosing: function() {
        jdb.cookie("Hello_World", "Yes", {
          expires: 1,
          path: "/"
        });
      }
    });
  }

为了不 运行 只有 cookie 存在时的 toast 代码。