7

我需要获取被点击的元素的 ID,但我需要将所有 js 和 html 分开。通常 id 只是在 html 中使用“this.id”。还有其他方法吗?

4

3 回答 3

12

这是e.target为了什么。你可以在任何你想要的地方添加一个事件监听器,只要允许点击事件冒泡到它(默认情况下发生)你就可以捕捉到它。一个基本的例子:

document.addEventListener('click', function(e) {
    alert(e.target.id);
});

单击每个将提醒其 ID。希望这可以帮助 :)

<button id="foo">foo</button>
<button id="bar">bar</button>
<button id="baz">baz</button>

编辑

http://jsfiddle.net/95NZ8/

于 2012-04-22T19:13:30.353 回答
0

尝试这样的事情:

$(document).ready(function () {
    $("#someWrapper").each(function () {
        $(this).on('click', function () {
            alert(this.id);
        });
    });
});
于 2012-04-22T19:03:13.790 回答
0
window.onclick = e => {
    console.log(e.target.id);
}

获取元素、标记名、类名、其他属性

window.onclick = e => {
    console.log(e.target);
    console.log(e.target.tagName);
    console.log(e.target.className);
    console.log(e.target.id);
} 
于 2017-07-04T10:24:46.550 回答