Javascript 如何将元素作为参数添加到多个元素中?

Javascript 如何将元素作为参数添加到多个元素中?,javascript,html,arrays,dom-events,Javascript,Html,Arrays,Dom Events,我的目标是,当用户单击其中一个div时,让一组具有可单击单词的div将其id传递给Javascript函数。它可以完美地为您服务 <div id="wordbox"> <div id="pd"><h4>pdf</h4><br></div> <div id="an"><h3>analysis</h3></div> <d

我的目标是,当用户单击其中一个div时,让一组具有可单击单词的div将其id传递给Javascript函数。它可以完美地为您服务

    <div id="wordbox">
        <div id="pd"><h4>pdf</h4><br></div>
        <div id="an"><h3>analysis</h3></div>
        <div id="ai"><h2>artificial intelligence</h2></div>
        <div id="tr"><h4>trends</h4><br><br></div>
        <div id="dm"><h3>data mining</a></div>
    </div>
但我并没有设法让它对所有元素都起作用。这失败了:

  var wb = document.getElementById("wordbox").children;

  wb.forEach(function (element, index){
    element.addEventListener("click", function(){
      showSlide(element.id);
    });
  }); 
有什么想法吗

wb不是一个真正的数组,它是一个类似数组的对象,名为live。您可以使用。也可以使用来选择图元

var wb=document.querySelectorAllwordbox>div; //新浏览器-https://developer.mozilla.org/en-US/docs/Web/API/NodeList/forEachbcd:api.NodeList.forEach //wb //支持旧浏览器 Array.fromwb .forEachfunctionelement、索引{ element.addEventListenerclick,函数{ console.logelement.id; }; }; pdf 分析 人工智能 趋势 数据挖掘 wb不是一个真正的数组,它是一个类似数组的对象,名为live。您可以使用。也可以使用来选择图元

var wb=document.querySelectorAllwordbox>div; //新浏览器-https://developer.mozilla.org/en-US/docs/Web/API/NodeList/forEachbcd:api.NodeList.forEach //wb //支持旧浏览器 Array.fromwb .forEachfunctionelement、索引{ element.addEventListenerclick,函数{ console.logelement.id; }; }; pdf 分析 人工智能 趋势 数据挖掘
当您从节点中选择子节点时,它实际上返回一个类似于数组的集合,该集合类似于数组,但不完全是数组。为了使用forEach,首先需要将其转换为数组,在下面的示例中,我使用将其转换为允许使用forEach的数组

const wb=document.querySelector'wordbox' const children=[…wb.children] children.forEachchild=>{ child.addEventListener'click',=>{ console.logchild.id } } pdf 分析 人工智能 趋势 数据挖掘
当您从节点中选择子节点时,它实际上返回一个类似于数组的集合,该集合类似于数组,但不完全是数组。为了使用forEach,首先需要将其转换为数组,在下面的示例中,我使用将其转换为允许使用forEach的数组

const wb=document.querySelector'wordbox' const children=[…wb.children] children.forEachchild=>{ child.addEventListener'click',=>{ console.logchild.id } } pdf 分析 人工智能 趋势 数据挖掘
感谢您的解释,我将阅读有关该扩展语法的内容。太糟糕了,我只能接受一个答案。谢谢你的解释,我会读到这个扩展语法。太糟糕了,我只能接受一个答案。querySelecorAll返回NodeList,NodeList有forEach方法,那么为什么我们需要将其转换为数组?@missKK看起来我没有更新最近的API更改squerySeleCorall返回NodeList,NodeList有forEach方法,那么为什么我们需要将其转换为数组?@missKK看起来我不是最新的随着最近API的变化
  var wb = document.getElementById("wordbox").children;

  wb.forEach(function (element, index){
    element.addEventListener("click", function(){
      showSlide(element.id);
    });
  });