我正在使用網格設置爲1/2小時間隔(slotMinutes設置爲30分鐘)的fullcalendar。我希望默認的點擊選擇是至少1小時的事件,但我希望開始時間以30分鐘爲增量。換句話說,我不希望用戶能夠突出顯示小於一個小時的任何時間段,但我希望他們能夠突出顯示從小時或半小時開始的1小時插槽(即:1:30 - 2:30)。在FullCalendar問題中設置默認點擊選擇突出顯示
如果我將snapMinutes設置爲60,則可以通過不讓它們突出顯示少於1小時的內容來解決第一部分問題。但是,它不會讓用戶選擇一小時內完全不在一小時內的插槽(即:它可以選擇1:00-2:00,但不能選擇1:30-2:30)。有什麼辦法可以做到這一點?
這裏是我使用的日曆(CoffeeScript的)
options = {
defaultView: 'agendaWeek'
defaultEventMinutes: 60
selectable: true
selectHelper: true
eventTextColor: 'black'
allDayDefault: false
header: {
left: 'prev,next today'
center: ''
right: 'title'
}
titleFormat: {
month: 'MMMM yyyy'
week: "MMM d[, yyyy]{ '—'[ MMM] d, yyyy}"
day: 'dddd, MMM d, yyyy'
}
ignoreTimezone: true
slotMinutes: 30
snapMinutes: 60
}
elm.fullCalendar(options)
下面是這個的jsfiddle: http://jsfiddle.net/lcrees/9f82c/
我的問題的第二部分是,我希望能夠設置上面的動態默認最小點擊選擇。從這個問題看來,我無法動態更新snapMinutes選項而不破壞並重新創建日曆:
https://code.google.com/p/fullcalendar/issues/detail?id=293
其他建議?
Lorill
在SO你通常需要顯示第一次嘗試;你有沒有試圖自己編碼呢?如果是這樣,請發佈相關代碼。否則,這個問題太廣泛了。 –
嗨,Teeg,我已經添加了我用於日曆的代碼。 – lcrees
感謝user2821493(如果這是你的真名......)。我無法自己回答這個問題,因爲我從來沒有使用過這個庫,但只是查看文檔,我認爲你對snapMinutes是正確的,但我不認爲有直接選擇去做你想要的其他部分。我想你可能需要使用其中的一個回調,比如'eventDrop'或'eventDragStop'或者其他東西;基本上無論哪種回調都會讓您自定義控制事件拖動。 –