Jquery右键单击,没有上下文菜单,直播和所有浏览器

时间:2011-01-11 09:23:34

标签: jquery hover live right-click


我需要一个很好的解决方案来管理左 - 和右键单击一个特殊类(现场)的div 对我来说,代码适用于每个新浏览器都很重要。

希望有人可以帮助我。


我的第一次尝试...... //右键点击不起作用

HTML

<div id="test_one" class="my_class">Click here</div>
<br /><br />
<div id="test_two" class="my_class">Click here</div>

JS

$(document).ready(function test()
{

    $(".my_class").bind("contextmenu",function(e){ return false; });

    $(".my_class").live('click', function(e)
    {
      if(e.button == 0 || e.button == 1)
      {
           alert('L -> '+this.id+'');
      }
      else if(e.button == 2){
           alert('R -> '+this.id+'');
      }
    });


});

示例: http://jsfiddle.net/EWXse/

提前致谢! 彼得

1 个答案:

答案 0 :(得分:1)

根据mousedown的文档,默认情况下无法检测到右键舔:http://api.jquery.com/mousedown/

How to distinguish between left and right mouse click with jQuery建议你使用event.which而不是event.button,因为.which在所有浏览器中被标准化为1,2,3。

值得一提的是:鼠标点击鼠标在Mac OS X上的Google Chrome中似乎不起作用。