我想从我的html代码中将一个鼠标事件和一个变量发送到JS函数,我可以发送事件,但问题是发送事件和一个变量。我已经包含了我想要做的精简版。浏览器是chrome。任何人都可以提供一些建议吗?`
function mouseDown(e,w) {
var ctrlPressed=0;
var evt = navigator.appName=="Netscape" ? e:event;
ctrlPressed =evt.ctrlKey;
self.status="" +"ctrlKey=" +ctrlPressed
if (ctrlPressed)
alert ("Mouse clicked with Ctrl/n and the variable is " + w )
return true;
}
</script>
<body>
<table border = "1" >
<tr>
<td onmousedown="mouseDown(e,\"variable\")"> Link 1 </td>
<td> Link 2 </td>
</tr>
</table>
</body>`
答案 0 :(得分:2)
不要使用浏览器检测。检查对象是否存在。
var evt = navigator.appName=="Netscape" ? e:event; // wrong
var evt = e ? e : event; // right
var evt = e || event; // also right
由于事件作为第一个参数传递,您可以尝试
<td onmousedown="mouseDown(arguments[0], 'variable');"> Link 1 </td>
(我只在Safari上测试了这个,不保证可以在其他浏览器上使用。)