0

我正在寻找一种方法来实现 jquery ui,例如在完整日历中的单个事件上拖动句柄。

用例是

$("#calendar").fullCalendar({
    //the normal parameters here
    eventsDragHandle: "someClass"
});

或者

$("#calendar").fullCalendar({
   //the normal parameters here
   eventHasDragHandle: true
});

这样,除非特定句柄被鼠标按下,否则事件不会拖动。

我试图修改 fullcalendar.js 无济于事,只会使 javascript 代码崩溃。

谢谢,凯文

4

1 回答 1

0

我似乎找到了一种方法来让它发挥作用。

在 eventRender 标记中实例化您的 fullCalendar 时,添加将成为事件元素拖动句柄的 html。

eventRender: function(event, element, view)
{
    var theHtml = "<div class='stops'>X</div>";
    $(element).append(theHtml);
}

在完整的日历源中,找到函数 draggable*Event ,其中 * 是您希望拥有拖动句柄的日历事件的类型。(如draggableDayEvent)

在绑定可拖动的代码中添加适当的“句柄”标签

eventElement.draggable({
   handle: ".stops",
   //etc...
});

这样做的原因是因为 eventRender 发生在元素被绘制和可拖动元素关联之前,因此句柄的 html 在绑定可拖动事件之前被附加。

我使用“.stops”类对其进行硬编码以供我使用,但这很容易变成所有完整日历的另一个选项参数。

于 2013-10-18T13:41:27.167 回答