javascript - 通过点击从 HTMLCollection 获取索引

标签 javascript html

在 HTML 中我有 9 <div> s 类为“.square”。

我想让它们可点击,我想知道点击了多少次和哪一个并将其存储到数组中。

所以,如果我点击第五个 <div>应点击 5 次[0,0,0,0,0,5,0,0,0]

    var button = document.getElementsByClassName("square");
    var clicked = [0,0,0,0,0,0,0,0,0];

    for (var i = 0; i < button.length; i++) {
       button[i].addEventListener("click", function () {});
       ;}

picture

最佳答案

您可以使用语句 let 对索引/变量 i 进行 block 作用域。

var button = document.getElementsByClassName("square");
var clicked = [0, 0, 0, 0, 0, 0, 0, 0, 0];

for (let i = 0; i < button.length; i++) {
  button[i].addEventListener("click", function() {
    clicked[i] += 1;
    
    console.log(clicked);
  });
}
<div class='square'>  [0] Click on me!</div><div class='square'>[1] Click on me!</div><div class='square'>[2] Click on me!</div><div class='square'>[3] Click on me!</div><div class='square'>[4] Click on me!</div><div class='square'>[5] Click on me!</div><div class='square'>[6] Click on me!</div><div class='square'>[7] Click on me!</div><div class='square'>[8] Click on me!</div>

关于javascript - 通过点击从 HTMLCollection 获取索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55444848/

相关文章:

javascript - 如何更新输入值 react

javascript - 非常简单的 XMLHttpRequest 不起作用

Javascript 全局匹配与捕获组

javascript - JQuery动态改变html内容

html - 处理转换 :translate? 的 Chrome 或 Safari 的移动版本是否有任何怪癖

javascript - HTML 表单 javascript 关联问题、答案和反馈

php - "Mapping"指向字符的箭头

javascript - 如何在单击复选框时使用数据库中的值填充输入文本字段

html - 如何在 Bootstrap 卡中将图像调整为等长

php - 在 <a> 标签内添加一个 <div>