突出显示周末鼠标悬停的事件

时间:2011-09-12 07:47:32

标签: fullcalendar

我已经设置了我的完整日历,以显示1天事件(以一种颜色显示)和为期一周的事件(以差异颜色显示)的混合。我希望提高事件的可见性,因为它可能会因许多重叠事件而混淆,所以我进行了设置,以便鼠标悬停时突出显示带黄色边框的事件。

这一切都运作正常,除非我有一个跨越周末的事件 - 即。星期三开始,在星期三之后结束 - 在鼠标悬停时,事件仅在当前周突出显示 - 周末之后的事件部分未突出显示,

任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:2)

确定, 我得到了这个工作。

fullcalendar.js为每个事件生成唯一ID - > event._id(_fc1,_fc2 ......等)

每个事件都由一个锚标记()表示。跨越周末的事件由2个锚标记表示。每个事件的唯一ID不会在fullcalendar.js的html中输出,因此无法看到哪些锚与哪些事件相关联。

我对fullcalendar.js进行了一些小改动,它将每个事件的唯一id添加到正在生成的锚点(作为附加的css类名称)

这意味着可以使用JQuery类选择器在mouseover事件中选择与事件关联的所有锚标记。

 eventMouseover: function (event, jsEvent, view) {            
        $("." + event._id).each(function (index) {
            $(this).css('border-color', 'yellow');
        });
    },

适合我!

答案 1 :(得分:0)

可能有更好的方法,但我找到了一种不触及来源的方式:

  1. 为每个事件添加一个唯一的css类。
  2. 渲染时,即使事件在周末延伸,该类也会应用于所有细分。
  3. 当用户点击某个活动时:
  4. $("." + calEvent.className).addClass('red');
    

    旁注:当您拖动一个事件时,属于同一事件的其他段将被隐藏,因此fullCalendar知道其他段,但我还没有找到通过它访问它们的方法API。