Javascript “需要禁用”;上下文菜单;单击鼠标右键并在单击鼠标右键时调用函数
我使用oncontextmenu在鼠标右键单击时调用一个函数,它在firefox上运行良好,但在ie上导致问题,上下文菜单也会随该函数一起出现 我只需要调用同一个函数,在纯javascript中的右键和左键单击上都有一些参数Javascript “需要禁用”;上下文菜单;单击鼠标右键并在单击鼠标右键时调用函数,javascript,html,javascript-events,Javascript,Html,Javascript Events,我使用oncontextmenu在鼠标右键单击时调用一个函数,它在firefox上运行良好,但在ie上导致问题,上下文菜单也会随该函数一起出现 我只需要调用同一个函数,在纯javascript中的右键和左键单击上都有一些参数 <html> <script> function mouseDown(e,param) { if (parseInt(navigator.appVersion)>3) { var clickType=1; if (navig
<html>
<script>
function mouseDown(e,param) {
if (parseInt(navigator.appVersion)>3) {
var clickType=1;
if (navigator.appName=="Netscape") clickType=e.which;
else clickType=event.button;
if (clickType==1) {
alert("left" +param);
}
if (clickType!=1) {
alert('right' + param);
}
}
return true;
}
</script>
<body>
<a href="javascript:void(0)"
onclick="mouseDown(event,'test1');"
oncontextmenu="mouseDown(event,'test2');">mouse</a>
</body>
</html>
函数mouseDown(e,参数){
if(parseInt(navigator.appVersion)>3){
var-clickType=1;
如果(navigator.appName==“Netscape”)单击type=e.which;
否则单击类型=event.button;
如果(单击类型==1){
警报(“左”+参数);
}
如果(单击类型!=1){
警报('右'+参数);
}
}
返回true;
}
您需要返回false在contextmenu事件中选择code>,以防止显示默认菜单
请记住,某些浏览器(特别是Firefox)默认不允许JavaScript阻止上下文菜单,因此您可能会遇到问题。尝试onmousedown而不是onclick,因为这可能会在IE上下文菜单出现之前运行,然后您可以使用jQuery.preventDefault()停止默认行为。