jquery-右键单击不工作
我有以下测试代码:jquery-右键单击不工作,jquery,click,Jquery,Click,我有以下测试代码: <script language="JavaScript" src="..\Generic\JAVASCRIPT\jQuery-min.js" type="text/javascript"></script> <script language="JavaScript" src="..\Generic\JAVASCRIPT\jQuery-ui-min.js" type="text/javascript"></script> <
<script language="JavaScript" src="..\Generic\JAVASCRIPT\jQuery-min.js" type="text/javascript"></script>
<script language="JavaScript" src="..\Generic\JAVASCRIPT\jQuery-ui-min.js" type="text/javascript"></script>
<script language="JavaScript">
$(document).ready(function()
{
$('#SG1').click(function(event) {
switch (event.which) {
case 1:
alert('Left Mouse button pressed.');
break;
case 2:
alert('Middle Mouse button pressed.');
break;
case 3:
alert('Right Mouse button pressed.');
break;
default:
alert('You have a strange Mouse!');
}
})
})
</script>
<p class="submit">
<input id="SG1" type="submit" name="submit" value="SG1">
</p>
$(文档).ready(函数()
{
$('#SG1')。单击(函数(事件){
开关(event.which){
案例1:
警报(“按下鼠标左键”);
打破
案例2:
警报(“按下鼠标中键”);
打破
案例3:
警报(“按下鼠标右键”);
打破
违约:
警惕(“你有一只奇怪的老鼠!”);
}
})
})
如果我左键单击,它工作正常(事件1)
如果我点击鼠标中键,它可以正常工作(事件2)
如果我右键单击,什么也不会发生(嗯,我会出现通常的菜单,但没有警报)
如果我将操作从
单击
更改为鼠标向下
,它将按预期工作。为什么不使用单击?我是否遗漏了一些明显的内容?尝试此操作以禁用contextmenu弹出窗口:
$(“#SG1”).bind(“contextmenu”,function(){return false;})
然后它就可以工作了。使用鼠标向下键
$(document).ready(function()
{
$('#SG1').mousedown(function(event) {
switch (event.which) {
case 1:
alert('Left Mouse button pressed.');
break;
case 2:
alert('Middle Mouse button pressed.');
break;
case 3:
alert('Right Mouse button pressed.');
break;
default:
alert('You have a strange Mouse!');
}
})
})
代码的问题在于,右键单击会调用contextmenu
事件。如果要禁用此功能,请查看此小提琴:
在这种情况下,当调用contextmenu事件时,JS代码会阻止它显示上下文菜单,并允许程序员做任何他或她喜欢的事情 这不是因为MS将其设置为默认上下文菜单吗?谢谢您的解释。现在这很有道理。为此干杯,这是一段需要记住的有用代码。