2011-01-09 37 views
4

我正在研究下面插件的代码,并想知道它在何时何地与“右键单击”事件相关联。它所做的就是jquery上下文菜单插件 - 右键单击​​事件类型在哪里?

插件参考链接:http://www.javascripttoolbox.com/lib/contextmenu/

$(this).bind('contextmenu',function(e){cmenu.show(this,e);return false;});

和 “文本菜单” 是一个自定义的jQuery事件类型。

能有人请解释这一切是如何工作的

我做了检查有单击事件,但这些都是联系在一起的菜单项而不是元素到菜单绑。

谢谢

答案:“contextmenu”不是自定义事件类型。它实际上是另外一个名字(映射等)为“右键单击”

回答

2

contextmenu自定义jQuery的事件(看看它here的MDC文章)。所有插件正在为此事件绑定事件处理程序并显示/隐藏菜单。

+0

哦!我觉得我好笨。谢谢安德鲁再次来救我:) – Nilesh 2011-01-09 23:27:56

1

文本菜单是触发JavaScript事件在用户右键点击一个元素,如果你想用这个事件来实现自己的功能,你可以做这样的事情:

$("element").bind("contextmenu",function(){ 
    //your code here 
}); 

什么发生在插件代码如下:

$(this).bind('contextmenu',function(e){ //capture right click on "this" which 
             //is the element being clicked 
    cmenu.show(this,e); //call function cmenu.show to show the menu and pass two arguments 
         //the element clicked "this: and the event data "e" 

    return false; //this cancels the default context menu 
}); 
相关问题