是否可以获取click事件而不将其传递给处理程序?

时间:2012-12-13 17:37:48

标签: javascript

我有类似的东西:

<div onclick="doSomething('foo', 'bar');"></div>

如您所见,事件未传递给处理程序。是否有可能以某种方式在处理程序内部访问它?

1 个答案:

答案 0 :(得分:4)

  

如您所见,事件未传递给处理程序。是否有可能以某种方式在处理程序内部访问它?

没有

实现此目的的最佳方法是在div中添加一个id,并从脚本中设置事件处理。

这应该做你想要的

<div id='myDiv'></div>

然后

function doSomething(evt, str1, str2) { ... }

document.getElementById('myDiv').onclick = function(e) {

    doSomething(e, 'foo', 'bar');

};

只需确保包含上述内容的脚本标记位于您身体标记的底部,因此在创建并准备好dom之前,脚本不会运行。