首页 > web前端 > js教程 > 正文

如何在 JavaScript 中向具有相同类的多个元素添加单击事件侦听器?

Barbara Streisand
发布: 2024-11-25 19:01:12
原创
445 人浏览过

How do you add click event listeners to multiple elements with the same class in JavaScript?

向具有相同类的多个元素添加单击事件侦听器

要将单击事件侦听器添加到具有特定类的所有元素,您可以可以使用 querySelectorAll() 方法代替 querySelector()。 querySelector() 方法返回第一个匹配元素,而 querySelectorAll() 返回所有匹配元素的 NodeList。

解决方案:

var deleteLinks = document.querySelectorAll('.delete');
登录后复制

现在你有所有删除链接的 NodeList,您可以循环遍历它们并向每个删除链接添加一个事件侦听器one.

for (var i = 0; i < deleteLinks.length; i++) {
    deleteLinks[i].addEventListener('click', function(event) {
        if (!confirm("sure u want to delete " + this.title)) {
            event.preventDefault();
        }
    });
}
登录后复制

在事件监听器中,可以使用 this 关键字来引用当前元素。这允许您访问元素的标题属性并向用户显示一条确认消息。

注意:使用 event.preventDefault() 来阻止默认操作非常重要如果用户确认删除,链接就会发生。

ES6版本:

使用ES6,可以使用forEach()方法简化代码:

Array.from(deleteLinks).forEach(link => {
    link.addEventListener('click', function(event) {
        if (!confirm(`sure u want to delete ${this.title}`)) {
            event.preventDefault();
        }
    });
});
登录后复制

以上是如何在 JavaScript 中向具有相同类的多个元素添加单击事件侦听器?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板