jQuery fullcalendar:contextmenu
我想使用jQuery.contextMenu:
http://abeautifulsite.net/blog/2008/09/jquery-context-menu-plugin
在jQuery.fullcalendar
当我右键单击某个事件时,它是如何工作的?
我不知道contextmenu插件,但我认为你可以将它绑定在eventRender
事件上。 我有一个事件的dblClick
问题。
这是我的解决方案的一部分:
eventRender: function(event, element) { element.bind('dblclick', function() { dopbClickFunction(event,element); .......
我正在解决完全相同的问题。 对我来说,它做了以下两个步骤:
1 – 代码
eventRender: function(calEvent,element){ element.bt({ ajaxPath: 'ajEvents.asp?opt=getExtendedEvent&valore=' + calEvent.id, trigger: 'hover', width: 200 }); //only for tooltip element.contextMenu('myMenu',{bindings:{'idVoce': function(t){ alert('right click on ' + calEvent.id) } } }) }
我认为你已经定义了myMenu div …
2 – 在上下文菜单中修改zindex,假设从500到2500和499到2499.如果你在一个对话窗口(如我自己)中有你的日历,这很重要,否则它会在可见层下面
我使用Fullcalendar加载回调: http ://arshaw.com/fullcalendar/docs/event_data/loading/
loading: function (bool, view) { if (bool){ jQuery('#com_jc_msg_saving').fadeIn(); } else { jQuery('#com_jc_msg_saving').fadeOut(); jQuery.contextMenu({ selector: '.fc-event',//note the selector this will apply context to all events trigger: 'right', callback: function(key, options) { //this is the element that was rightclicked console.log(options.$trigger.context); switch(key) { case 'edit_event': break; case 'del_event': break; case 'add_event': break; } }, items: { 'edit_event': {name: 'Edit'}, 'del_event': {name: 'Delete'}, 'add_event': {name: 'Create'}, } }); } },
问题是你需要从该元素获取事件id – 我所做的是在事件json数据中使用className。 只需要一个字符串替换,你就会得到你的身份。
‘className’=>’jc_event_’。 $事件 – > ID,