2014-02-04 4 views
0

Я использую fullcalendar 1.6.0, с qtip2, построение массива в PHP и используя это в качестве списка событийполный календарь усеченный название

$('#calendar').fullCalendar({ 
    // put your options and callbacks here 
    events: [ 
    <?php echo $eventlist; ?> 
    ], 

Это работает хорошо, но сейчас я хотел бы использовать календарь в «мобильном дружественном» макете.

Что я хочу сделать, при разрешении ниже определенной точки останова удалить часть или всю информацию о событии из самого календаря (так что цветной блок отображается в календаре, но мало или ничего больше), но все еще появляются в qtip.

Могу ли я использовать eventrender для этого?

ответ

1

Да. Я думаю, вы можете это сделать. Ниже приведен пример кода. Вы должны использовать два события eventRender и eventAfterAllRender. или вы также можете скрыть элементы внутри eventAfterAllRender.

eventRender: function (event, element, view) { 
    if(window.screen.width < 300) { 
     $('.fc-event-title').hide(); 
     $('.fc-event-time').hide(); 
    } 
}, 
eventAfterAllRender: function(view) { 
     $('.fc-event-inner').each(function(){ 
      $(this).qtip(
      { 
       content: $(this).children('.fc-event-time').html() + '' + $(this).children('.fc-event-title').html() 
      }); 
     } 
} 

ПРИМЕЧАНИЕ. Этот код не проверен. Измените его в соответствии с вашими потребностями. Что-то вроде выше будет работать для вас.

+0

Спасибо за (быстрый) ответ. Я не мог заставить его работать сначала, и я не уверен, что делаю это правильно, но это то, что я сделал. я редактировал существующее событие визуализации, (который показывает QTIP) следующим образом \t [код], если ($ (окно) .width() <760) { $ ('к-событие названия'). replaceWith (" "); }; [/ code] Если я скрою заголовок, я получаю событие с нулевым значением в календаре, поэтому вместо него я заменил его на неиспользуемое пространство. Я не использовал функцию eventAfterAllRender, она работает штраф без него –

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