2013-11-26 8 views
2

Я использую fullcalendar и по щелчку определенной ячейки времени Я открываю colorbox, проблема возникает, когда пользователь дважды нажимает на одну и ту же ячейку, что приводит к тому, что одна страница отображается дважды в colorbox.FullCalendar - Handle Двойной щелчок события

Выход ниже кода при выполнении в хроме и дважды нажал на конкретное время -

день нажмите произошло
выбор сделан
день нажмите произошло
выбор сделан

$('#calendar').fullCalendar({ 
     header: { 
      left: 'prev,next', 
      center: 'title', 
      right: '' 
     }, 
     height: 500, 
     defaultView: 'agendaWeek', 
     minTime: 0, 
     firstHour : 9, 
     maxTime: 24, 
     firstDay : 1, 
     allDaySlot: false, 
     axisFormat: 'H:mm', 
     timeFormat: 'HH:mm{-HH:mm}', 
     disableDragging: true, 
     eventClick: function(calEvent, jsEvent, view) { 
      console.log('event clicked'); 
     }, 
     selectable: true, 
     eventSources : [ 
         { 
          url : '/XXX/yyyyy', 
          editable : true, 
          allDayDefault : false 
         } 
     ], 
     eventRender: function(event, element) { 
      element.bind('dblclick', function() {   
       console.log('dbl clicked'); 
      }); 
      element.draggable = false; 
      event.editable = false; 

     }, 
     select: function(start,end,title,jsEvent) { 
      console.log('selection is made'); 
     } , 
     dayClick: function(start,end,event,element) { 
      console.log('day click happened'); 
     }, 
     eventMouseover: function(calEvent, jsEvent) { 
      console.log('event mouse over'); 
     }, 
     eventMouseout: function(calEvent, jsEvent) { 
      console.log('event mouse out');   
     }, 

    }); 

    $('#calendar').fullCalendar(); 

    <div id='calendar'> 
</div> 

I Я ищу решение для предотвращения двойного щелчка.

+0

Вы решили проблему? У меня та же проблема –

ответ

2

После открытия вы можете проверить, открыта ли страница и не игнорировать этот клик, если это верно. При закрытии страницы вам нужно сбросить открытое состояние, чтобы вы могли открыть что-то еще. Надеюсь, это поможет

+0

Спасибо Мо .... Я хочу предотвратить перед открытием страницы .. я создал ниже решение работает \t \t if (dttime! = 0) { \t dttime = 0; \t возвращение; } \t dayClick: функция (начало, конец, событие, элемент) { \t \t \t \t вар с.о. = новая Дата (начало); \t \t \t \t var ed = new Дата (конец); \t \t \t \t var x = sd.getTime(); \t \t \t \t var y = map [x]; \t \t \t \t, если (TypeOf (у) == 'не определено') { \t \t \t \t \t у = 'щелкнул'; \t \t \t \t \t map [x] = 'clicked'; \t \t \t \t} еще { \t \t \t \t \t dttime = х; \t \t \t \t} \t \t \t}, – csarathe

+0

выше решения не удается, когда пользователь щелкает тройные, четыре, пять .... нажмите непрерывно. Я ищу отключить ячейку, когда первый щелчок происходит. Возможно ли это? – csarathe

+0

Да, конечно. Вы можете удалить обработчик кликов из компонента после его активации и добавить его снова после закрытия закрытого элемента. – MoYapro

Смежные вопросы