为添加的事件设置动画,但不为已删除的事件设

时间:2013-12-06 20:26:29

标签: jquery fullcalendar animate.css

我正在使用FullCalendar在我的应用上显示一些事件。我希望在日历上添加某些事件时使用animate.css中的某些css动画。为此,我传递给fullCalendar:

eventRender: function(ev,elm){
    $(elm).addClass("animated bounce");                
}

事件发生了美妙的反弹。问题是每次拖动事件时都会为每个事件调用eventRender,因此当我拖动特定事件时,所有其他事件也会反弹:/ 实际上,我希望能够仅在我第一次加载事件时动画事件,而不是在拖放时。因此,由于eventRender不知道他为什么要重新渲染所有事件,是否有其他方法可以为它们设置动画?

以下是显示问题的示例:http://jsfiddle.net/5H2CS/

1 个答案:

答案 0 :(得分:1)

由于我在很长一段时间内没有与fullcalendar合作,我花了一些时间来解决这个问题,但这里有一些你可以使用的内容:http://jsfiddle.net/5H2CS/12/

// track whether the element has been dropped inside the event fetcher:
...
  var eventObject = {
            title: $.trim($(this).text()), // use the element's text as the event title
            dropped: 0
        };
...

// in the renderer callback: if event has not been dropped yet, animate it
// and then, set the dropped status to 1
eventRender: function(e, elm){
            if (e.dropped == 0) {
               $(elm).addClass("animated bounce");
               e.dropped = 1;
            }
        },
...

就像一个魅力:)