在firefox中,当您向方法添加onclick事件处理程序时,事件对象会自动传递给该方法.除其他外,这允许检测单击哪个特定元素的能力.例如
document.body.onclick = handleClick; function handleClick(e) { // this works if FireFox alert(e.target.className); }
有没有办法在IE中近似这个?我需要能够检测从body元素上的事件处理程序中单击的元素.
如果我不能使用jQuery,我将如何做到这一点
document.body.onclick = handleClick; function handleClick(e) { //If "e" is undefined use the global "event" variable e = e || event; var target = e.srcElement || e.target; alert(target.className); }
这是一个jQuery解决方案
$(document.body).click(function(e) { alert($(this).attr("class")); });