Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检测浏览器是否支持右键单击事件覆盖_Javascript_Jquery_Javascript Events_Right Click - Fatal编程技术网

Javascript 检测浏览器是否支持右键单击事件覆盖

Javascript 检测浏览器是否支持右键单击事件覆盖,javascript,jquery,javascript-events,right-click,Javascript,Jquery,Javascript Events,Right Click,我正在使用上下文菜单jquery插件,我需要检测哪些浏览器支持它。如何做到这一点 我听说opera和safari的某些版本不支持右键单击覆盖业务您可以手动创建并触发contextmenu事件。如果设置了正确的处理程序,则可以检测是否调用了该处理程序 下面是一个示例(使用jQuery创建和观察事件): 这是一个测试页面: edit2:DOM再次罢工。我忘了createEvent在IE上完全不起作用,所以我也使用了jQuery来创建事件。这个概述可能很有用:很好!但是,您认为它可以适应jquery吗

我正在使用上下文菜单jquery插件,我需要检测哪些浏览器支持它。如何做到这一点


我听说opera和safari的某些版本不支持右键单击覆盖业务

您可以手动创建并触发contextmenu事件。如果设置了正确的处理程序,则可以检测是否调用了该处理程序

下面是一个示例(使用jQuery创建和观察事件):

这是一个测试页面:


edit2:DOM再次罢工。我忘了
createEvent
在IE上完全不起作用,所以我也使用了jQuery来创建事件。

这个概述可能很有用:很好!但是,您认为它可以适应jquery吗?我当然不用原型。原型用于生产线5、7和11。jQuery的事件API只是这里类似方法的不同名称:观察->绑定,停止观察->取消绑定,停止->默认值。请参阅我的编辑以获取示例。哦,没错,IE7中也有错误。多姆自由贸易区。我将编辑我的答案。
function testContextMenuEvent() {
  var supported = false;
  function handler(e) {
    supported = true;
    e.stopPropagation();
  }
  $(document).bind('contextmenu', handler);
  var evt = jQuery.Event("contextmenu");
  $(document).trigger(evt);
  $(document).unbind('contextmenu', handler);
  return supported;
}