2010-08-17 2 views

ответ

8

Я не знаю плагин contextmenu, но я думаю, вы можете связать его с событием fullcalendar eventRender. У меня проблема с dblClick на мероприятии.

Это часть моего решения:

eventRender: function(event, element) { 
    element.bind('dblclick', function() { 
    dopbClickFunction(event,element); 
    ....... 
+0

о, да, EventRender .. это все =) спасибо !! – Franky

1

Я решении точно такая же проблема. Для меня он работал делать в 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) } } }) 
    } 

Я полагаю, вы уже определили DIV MyMenu ...

2 - изменить ZIndex в ContextMenu, скажем, от 500 до 2500 и от 499 до 2499. Это важно, если у вас есть свой календарь в диалоговом окне (как я), в противном случае она будет идти под видимым слоем

1

Я использовал 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'}, 
      } 
     }); 
    } 
}, 

Дело в том, что вам нужно будет получить идентификатор события из этого элемента - то, что я сделал, было использовать имя класса в событиях json data. Просто немного строки заменить, и вы будете иметь свой идентификатор.

'className' => 'jc_event_'. $ event-> id,