我有类似的东西:
<div onclick="doSomething('foo', 'bar');"></div>
如您所见,事件未传递给处理程序。是否有可能以某种方式在处理程序内部访问它?
答案 0 :(得分:4)
如您所见,事件未传递给处理程序。是否有可能以某种方式在处理程序内部访问它?
没有
实现此目的的最佳方法是在div中添加一个id,并从脚本中设置事件处理。
这应该做你想要的
<div id='myDiv'></div>
然后
function doSomething(evt, str1, str2) { ... }
document.getElementById('myDiv').onclick = function(e) {
doSomething(e, 'foo', 'bar');
};
只需确保包含上述内容的脚本标记位于您身体标记的底部,因此在创建并准备好dom之前,脚本不会运行。