我正在插入自定义脚本来篡改页面。该脚本将添加一个输入框。
<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);