Javascript 如何使用eventlisteners将参数传递给函数?

Javascript 如何使用eventlisteners将参数传递给函数?,javascript,event-handling,Javascript,Event Handling,我正在制作一个抽认卡游戏,用户可以选择动物组,然后屏幕上会弹出一个随机的动物组 但是,无论传递给函数displayAnimaldatavalue的值是什么,都会显示相同的值 这是最麻烦的部分: 选择动物组 鸟 狗 鱼 有多个问题 您没有在HTML中更新数据属性数据。所有3行都具有相同的值。 If else语句使用赋值运算符=而不是相等运算符==或==。 单击时传递元素,而不是传递数据属性。 在每次单击时获取随机值,即初始化randomBird on click事件 这是一个更新的代码 var

我正在制作一个抽认卡游戏,用户可以选择动物组,然后屏幕上会弹出一个随机的动物组

但是,无论传递给函数displayAnimaldatavalue的值是什么,都会显示相同的值

这是最麻烦的部分:

选择动物组

鸟 狗 鱼
有多个问题

您没有在HTML中更新数据属性数据。所有3行都具有相同的值。 If else语句使用赋值运算符=而不是相等运算符==或==。 单击时传递元素,而不是传递数据属性。 在每次单击时获取随机值,即初始化randomBird on click事件 这是一个更新的代码

var birdArray=[猫头鹰、蜂鸟、巨嘴鸟] var dogArray=[斗牛犬、猎犬、德国雪豹] var fishArray=[金鱼、马希马希、鲶鱼] FlashCardGame函数{ var classname=document.getElementsByClassNamerow; 对于变量i=0;i 鸟 狗 鱼
所有三个div的可能重复对数据具有相同的值。您的意思是通过而不是解析吗?
var classname = document.getElementsByClassName("row")
for (var i = 0; i < classname.length; i++) {
  var datavalue;
  datavalue = classname[i].getAttribute("data-animal-cat");
  classname[i].addEventListener("click", function() {
    displayAnimal(datavalue);
  });
}