触发右键单击

我正在尝试使用ContextMenu插件将上下文菜单延迟绑定到元素。 所以在第一次右键单击这些元素时,我想:

  1. 拦截右键点击某个“无语言”课程的直播活动,
  2. 确定data('events').contextmenu存在,
  3. 如果没有,请附上上下文菜单(并更改类以避免重新抛出此实时进程),
  4. 重新抛出右键单击事件以显示右键单击。

我遇到了最后一项问题。 jQuery允许使用.trigger('click') .click().trigger('click')来模拟左键单击,但似乎没有办法通过trigger右键单击事件。

或者有吗?

你可以通过它来触发它

 $('#element').trigger({ type: 'mousedown', which: 3 }); 

http://api.jquery.com/trigger/#example-5

有一种更新的方法:

 $('#element').triggerHandler('contextmenu'); 

文档可以在这里找到 。

与此类似,但我不确定您是否可能引用jQuery UI数据,但是。

 $('#element').mousedown(function(event) { if(event.which == 3) { if(typeof($(this).data('events')) === 'undefined') { $(this).data('events', { somedata: 'hello' }); } else { // "re-throw" right click context menu } } });