拖拽和调整之eventDrop

优质
小牛编辑
120浏览
2023-12-01

当拖动结束且日程移动另一个时间时触发:

function(event, dayDelta, minuteDelta, allDay, revertFunc, jsEvent, ui, view){}

event 是 Event Object 对象,包含当前日程的信息(时间,标题等)

dayDelta 是日程移动的天数(可能是负数)

minuteDelta 是日程移动的分钟数(可能是负数),只有在议程周视图有效,其他视图下是0。

allDay 在月视图下被移动一天或者周视图下的“all-day”时间槽时是true;当移动到周视图下的其他时间槽时是false。

revertFunc 是一个函数,如果被调用的话,日程会恢复到拖拽前的时间(就是被还原),当ajax失败的时候比较有用。

jsEvent 是原生的js对象,包含鼠标点击坐标等信息。

ui 是 jQuery UI 对象。

view 是当前的 View Object。

$('#calendar').fullCalendar({
    events: [
        // events here
    ],
    editable: true,
    eventDrop: function(event,dayDelta,minuteDelta,allDay,revertFunc) {

        alert(
            event.title + " was moved " +
            dayDelta + " days and " +
            minuteDelta + " minutes."
        );

        if (allDay) {
            alert("Event is now all-day");
        }else{
            alert("Event has a time-of-day");
        }

        if (!confirm("Are you sure about this change?")) {
            revertFunc();
        }

    }
});

官方英文文档:http://arshaw.com/fullcalendar/docs/event_ui/eventDrop/