首页 > 解决方案 > 将事件附加到 vanilla Javascript 中已经存在的事件

问题描述

我有一个已经定义的点击事件被攻击到一个链接,我想知道在纯 JavaScript 中将另一个点击事件附加(而不是覆盖)另一个点击事件的最佳方法是什么。

这是我的代码(小提琴):

var link = document.getElementById('click');
link.onclick = function(){
    alert("1st click");
};
link.onclick = function(){
    alert("2nd click");
};

上面的代码覆盖了第一个 onclick 事件。

此外,我知道在 jQuery 中使用此代码(小提琴)这是可能的(无需覆盖):

var link = $('#click');
link.click(function(){
    alert("1st click");
});
link.click(function(){
    alert("2nd click");
});

我只想在香草 Javascript 中使用相同的内容。谢谢。

标签: javascriptevent-handling

解决方案


使用事件监听器处理事件是正确的方法(小提琴):

var link = document.getElementById('click');
link.addEventListener("click", function(){
    alert("1st click");
});
link.addEventListener("click", function(){
    alert("2nd click");
});

推荐阅读