我想用jQuery.contextMenu:jQuery的fullcalendar:文本菜单
http://abeautifulsite.net/blog/2008/09/jquery-context-menu-plugin
在jQuery.fullcalendar
当我右键单击一个事件,它是如何工作的?
我想用jQuery.contextMenu:jQuery的fullcalendar:文本菜单
http://abeautifulsite.net/blog/2008/09/jquery-context-menu-plugin
在jQuery.fullcalendar
当我右键单击一个事件,它是如何工作的?
我不知道contextmenu插件,但我认为你可以将它绑定到fullcalendar的eventRender
事件上。我遇到与dblClick
有关的问题。
这是我的解决方案的一部分:
eventRender: function(event, element) {
element.bind('dblclick', function() {
dopbClickFunction(event,element);
.......
我解决完全相同的问题。对我来说,它的工作做2个以下步骤:
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格...
2 - 修改Z-索引的文本菜单,让我们从说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。只是一个字符串替换,你会有你的ID。
'className'=>'jc_event_'。 $ event-> id,
哦,是的,EventRender ..就是这样=)谢谢你! – Franky 2010-08-17 12:41:32