javascript - 在 forEach 循环中获取特定元素

标签 javascript

我在 forEach 循环中有一个选择元素列表,并且只需要索引为 0 的第一个元素。

这个元素将有一个不同的方法,我试图防止重复代码我不想只为这个单个元素创建另一个方法,我试图弄清楚但似乎我不是成功。

var listOfSelect = document.querySelectorAll('select');

listOfSelect.forEach(function(element) {
  element.addEventListener('focus', function () {
      element.style.backgroundColor = "white";
  });
  element.addEventListener('blur', function () {
      element.style.backgroundColor = "#F0F0E7";
  });

  element.addEventListener('change', function () { // I would want to get the first element here 
    // 
  });
});

最佳答案

您可以访问 index 作为 forEach 方法的第二个参数,如下所示

var listOfSelect = document.querySelectorAll('select');

listOfSelect.forEach(function(element, index) {
 ...

  element.addEventListener('change', function () { 
    // I would want to get the first element here 
    if (index === 0) {
      console.log('hi')
    }
  });
});

关于javascript - 在 forEach 循环中获取特定元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57231827/

相关文章:

javascript - 如何在 TypeScript React 组件中返回字符串或 JSX 元素?

javascript - 从函数触发日期选择器不起作用

javascript - 如何在进入下一页之前更改按钮的文本?

javascript - 使用 javascript 关闭弹出窗口

javascript - 使用 Javascript 下载 xlsx 格式的 Excel 文件(将 html 表格导出到 Excel)

javascript - IText 的 Canvas 大小

javascript - 并行使用 async/await,并在结果到达时获取结果?

javascript - 对数据库的多次调用无法正常工作

javascript - 从 firefox 扩展读取 HTTP 响应

javascript - 如何清理从所见即所得编辑器收到的数据?