将图像附加到给定单元格

时间:2014-12-19 17:46:42

标签: jquery fullcalendar

我想在右下方显示一个小方块,而不是在单元格中显示事件的文本(= day)。

关键是,当右下角有一个小方块时,有一个重要的日期。

我的问题是,如果图像应该只附加一次,则会多次附加图像。

$('#calendar').fullCalendar
({
    theme: true,
        header:
        {
            left: 'prev,next day',
            center: 'title',
            right: 'month,agendaWeek,agendaDay'
        },
        defaultDate: '2014-11-12',
        editable: false,
        eventLimit: false, // allow "more" link when too many events
        dayRender: function(date, element, view)
            {
                $('.fc-today').append('<img src="images/square.png">');
            }
});

结果在FireBug中:

<td class="fc-day-number fc-fri fc-today ui-state-highlight" data-date="2014-12-19">
19
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">
<img src="images/square.png">   

有人有解决方案吗?

1 个答案:

答案 0 :(得分:0)

您正在使用dayRender,假设它只会在当天(今天)调用。这个假设是不正确的。

对于日历中存在的每一天执行此回调。因此,如果您想要在当天执行某些代码,则需要具备保证当前element是当前日期的条件。

这样的事情:

dayRender: function(date, element, view)
{
    if (element.attr('data-date') == moment().format('YYYY-MM-DD')) {
        $('.fc-today').append('<img src="images/square.png">');
    }
}

我还没有对此进行测试,但应该可行。请注意,如果要在包含事件的单元格(天)中执行此操作,则应该使用eventRendereventAfterAllRender