FullCalendar 是一個(gè)流行的 JavaScript 事件日歷庫(kù)。要在 FullCalendar 中處理用戶的交互操作,你需要監(jiān)聽和響應(yīng)相關(guān)的事件。以下是一些常見的用戶交互操作及其對(duì)應(yīng)的事件:
calendar.on('select', function(info) {
// info.start 和 info.end 分別表示所選日期范圍的開始和結(jié)束時(shí)間
});
calendar.on('dateClick', function(info) {
// info.date 表示被點(diǎn)擊的日期
});
calendar.on('eventClick', function(info) {
// info.event 表示被點(diǎn)擊的事件對(duì)象
});
calendar.on('eventDragStart', function(info) {
// 拖動(dòng)開始時(shí)觸發(fā)
});
calendar.on('eventDragStop', function(info) {
// 拖動(dòng)結(jié)束時(shí)觸發(fā)
});
calendar.on('eventResizeStart', function(info) {
// 調(diào)整大小開始時(shí)觸發(fā)
});
calendar.on('eventResizeStop', function(info) {
// 調(diào)整大小結(jié)束時(shí)觸發(fā)
});
calendar.on('viewSkeletonRender', function(info) {
// 視圖渲染完成后觸發(fā)
});
calendar.on('viewSkeletonDestroy', function(info) {
// 視圖銷毀前觸發(fā)
});
要處理這些事件,你需要在創(chuàng)建 FullCalendar 實(shí)例時(shí)提供相應(yīng)的回調(diào)函數(shù)。例如:
document.addEventListener('DOMContentLoaded', function() {
var calendarEl = document.getElementById('calendar');
var calendar = new FullCalendar.Calendar(calendarEl, {
initialView: 'dayGridMonth',
dateClick: function(info) {
alert('Date clicked: ' + info.dateStr);
},
eventClick: function(info) {
alert('Event clicked: ' + info.event.title);
}
});
calendar.render();
});
在這個(gè)例子中,我們?yōu)?dateClick
和 eventClick
事件提供了回調(diào)函數(shù),當(dāng)用戶點(diǎn)擊日期或事件時(shí),會(huì)彈出一個(gè)包含相關(guān)信息的警告框。你可以根據(jù)需要修改這些回調(diào)函數(shù)以實(shí)現(xiàn)自定義的交互操作。