通过返回false删除EventListener
Remove EventListener by returning false
My _()
函数获取HTML元素ID并返回document.getElementById(str)
。下面我有许多eventListener,它们要么监听按钮点击,要么监听键盘事件。然而,由于该JS文件在许多页面之间共享,某些页面不存在某些HTML元素,因此addEventListener()
函数每次尝试将事件侦听器绑定到不存在的HTML元素时都会抛出错误并终止执行如何防止这种情况发生并让代码继续执行?换句话说,我怎样才能发现这些错误
function _(str) {
var k = document.getElementById(str);
if(k){
return document.getElementById(str);
} else {
return false;
}
}
document.addEventListener("DOMContentLoaded", function () {
//Button Event Listeners
_("commentlink").addEventListener("click", showCommentBox);
_("help_retract").addEventListener("click", function () {
$(".help_box").toggle(500);
_("commentlink").style.display = "block";
$("#commentbox").hide();
})
_("help_link").addEventListener("click", function () {
$("#help_box").toggle(500);
});
_("q-help-link").addEventListener("click", function (){
$("#q-help").toggle(500);
});
_("comment-textbox").addEventListener("keyup", checkCharLength);
_("submit-comment").addEventListener("click", submitComment);
_("voteUp").addEventListener("click", function () {
submitVote(1);
})
_("voteDown").addEventListener("click", function () {
submitVote(-1);
})
//Automatic Events:
if (checkCookie("comm_sub")) {
showCommentBox();
}
});
尝试添加此函数:
window.onerror = function(){
return true;
}
如果这不起作用,用包围每个.addEventListener
try {
// .addEventListener here
} catch (e) { // Ignore Errors }
相关文章:
- 使用php或javascript从facebook相册URL中删除多余的部分
- RegEx删除空属性?例如,如果(class=“”||class=“”)移除;否则就下课
- 如何删除多行HTML排列中的空白
- 如何从rails中的代码中删除新行( )
- 我应该始终删除EventListener吗
- 使用Angular添加EventListener并将其删除
- 正在添加用于文件删除的eventListener
- JS:将 EventListener 添加到动态创建的 DOM 对象中,这些对象删除 parentNode
- 如何在 Javascript 中删除 eventListener
- JavaScript添加和删除<tr>使用EventListener和jQuery
- 单击按钮后删除EventListener
- 通过返回false删除EventListener
- Javascript:如何删除eventListener
- 删除面向对象JavaScript中的eventListener
- EventListener可以通过取消它的回调函数来删除吗?
- EventListener没有被删除并再次添加,这是有问题的吗?
- 为什么不'是否删除EventListener函数
- 可以't删除eventListener
- javascript:删除一个 EventListener,然后将其重新添加
- 如何在创建时删除EventListener