【发布时间】:2013-12-06 22:37:04
【问题描述】:
我正在尝试将此插件集成到我的应用中:https://github.com/mar10/jquery-ui-contextmenu/blob/master/jquery.ui-contextmenu.js
我完全困惑于右键单击与初始化元素上的委托选择器匹配的元素最终会在绑定元素上触发“contextmenu”事件......我一直在阅读这段代码 HOURS 和我仍然没有看到类似的东西:
ui.target.on('right-click', opt.selector, function(){ this._tigger('contextmenu')});
或类似的东西。我没有看到对 event.which()(用于鼠标按钮检测)等的引用。
我可以在第 79 行看到自定义“contextmenu”事件绑定到委托,但我在代码中没有看到任何地方显示此自定义在右键单击元素时实际上是如何被触发的...
因为我看不到任何触发代码..我假设 jQuery-UI 小部件工厂以某种方式“自动”进行触发..但这仍然引出了问题,这个插件如何告诉 jquery-ui框架,“使用右键单击事件作为我的'触发器'”??
这到底是怎么回事????请帮忙!
【问题讨论】:
-
使用的事件是oncontextmenu
-
所以@adeneo,做类似的事情:
$(window).on('contextmenu', function(){ .. });本质上与:window.oncontextmenu = function(){ .. }相同? -
是的,当使用 jQuery(或 addEventListener)时,您删除前导“on”并只使用事件名称,这样看起来是正确的。
-
@RavenHursT - 当然,添加了!
标签: jquery jquery-ui jquery-ui-widget-factory jquery-ui-widget