将鼠标悬停在另一个事件上时更改事件颜色的完整日历



我要做的是,当我把鼠标放在另一个事件上时,改变一个事件的颜色。例如,当我将鼠标悬停在事件 58335 上时,58345 的颜色将从橙色更改为蓝色。

日历

我正在使用事件鼠标悬停事件 - https://fullcalendar.io/docs/mouse/eventMouseover/但无法弄清楚如何访问另一个事件。我跟踪了jsEvent,希望我能找到一些对其他事件的引用,但找不到任何参考。

有什么建议吗?任何帮助将不胜感激!

为了访问其他事件,您可以使用"clientEvents"方法,该方法可以检索屏幕上当前可见的任何或所有事件。它可以提供一个过滤器,以根据您的要求将结果限制为特定事件。然后,您可以使用"updateEvent"方法告诉日历使用其新值更新该事件。

下面是事件鼠标悬停函数:

eventMouseover: function(event, jsEvent, view) {
  if (event.id == 58335) {
    var targetEvents = $("#calendar").fullCalendar("clientEvents", 58345); //restrict to event(s) with the ID specified in the second argument
    targetEvents[0].backgroundColor = "blue";
    $("#calendar").fullCalendar("updateEvent", targetEvents[0]);
  }
}

有关工作演示,请参阅 http://jsfiddle.net/sbxpv25p/106/。

有关所用完整日历方法的更多详细信息,请参阅 https://fullcalendar.io/docs/event_data/clientEvents/和 https://fullcalendar.io/docs/event_data/updateEvent/。

大概当您将鼠标悬停时,您想将颜色改回原始颜色?如果是这样,那么您可以对 eventMouseOut 回调遵循相同的方法。

最新更新