我正在插入自定义脚本来篡改页面。该脚本将添加一个输入框。

<html>
  <body>
    <div id="originalpage">
      <input type="text" id="myinput">
    </div>
  </body>
</html>

我无法在输入框中键入内容,因为父元素具有在按键上添加preventDefault()的脚本。
function complexKeyHandler(e) {
  // stuff
  e.preventDefault();
}

document.getElementById("originalpage")
  .addEventListener("keypress", complexKeyHandler, true);

使用chrome开发工具,我可以删除输入文本框上的继承的keypress事件,而不会干扰原始页面,并且它可以正常工作。

我可以从脚本中执行此操作吗?所有脚本均为普通javascript(无jquery)。

最佳答案

您可以像这样删除eventListener:document.getElementById("originalpage").removeEventListener("keypress", complexKeyHandler, true);

08-19 19:30