从HTML发送一个事件加变量到JS函数

时间:2010-02-20 09:45:51

标签: javascript javascript-events

我想从我的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>`

1 个答案:

答案 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上测试了这个,不保证可以在其他浏览器上使用。)