从单击事件获取值

Getting a value from a click event

本文关键字:获取 事件 单击      更新时间:2023-09-26
<div id="card0">
<div id="card1">
<div id="card2">
<div id="card3">
<div id="card4">

我已经创建了一个卡牌、套牌和手牌"类"。我想做的是为一个纸牌数组创建一个事件处理器。

for (var i = 0; i < 5; i++) {
    myHand.cards[i] = myDeck.deal();
}

我还想在循环中创建事件处理程序:

$("#card"+i).on("click", cardClicked);
function cardClicked() {
    alert(this);
}

是否有办法找出哪个div被点击了?我试过做一个匿名函数传递事件。我已经试过了,但我不知道还能试什么

可以。

给你的事件处理程序一个参数,当它被调用时传递:

function cardClicked(e){
   console.log(e.target.id);
}

注意,应该使用console.log()进行调试,而不是alert()。记录到控制台将显示您正在记录的元素/对象/任何内容的实际结构。

还有一种更简单的方法来附加侦听器:

var divs = document.getElementsByTagName("div");
for(var i = 0; i < divs.length; i++){
    $(divs[i]).click(function(e){
        console.log(e.target.id);
    });
}