2014-01-24 19 views
1

我想顯示使用addClassfc-event-inner類圖像的fullcalendar事件中的圖像。我想用jquery這樣做,所以我可以在不同的事件中使用不同的圖像。誰能告訴我爲什麼這不起作用?顯示與eventRender

calendar.fullCalendar('renderEvent', { 
    title: title, 
    start: start, 
    end: end, 
    allDay: allDay, 
    eventRender: function(copiedEventObject,element) {           
     element.find('.fc-event-inner').css('background-image',"url(icons/kalender_medicin_100px.png)") 
    }, 
    className: '.fc-event-inner' 
}); 
+0

你是不是想添加一個圖標或你希望整個背景圖像? – A1rPun

+0

我不想通過拖放添加圖標。 –

+0

您應該將它添加到'fc-event-content'或'fc-event-title'。 – A1rPun

回答

2

應指定在fullCalendar配置eventRender,而不是通過renderEvent方法傳遞。

$('#calendar').fullCalendar({ 
    eventRender: function(copiedEventObject,element) { 
     var icon = $(document.createElement('div')); 
     icon.css('background-image',"url(icons/kalender_medicin_100px.png)"); 
     element.find('.fc-event-title').html(icon + copiedEventObject.title); 
    } 
}); 

如果你想添加圖標只拖動的事件,你可以在自定義屬性傳遞到事件數據,像這樣:

calendar.fullCalendar('renderEvent', { 
    //... 
    isCustom: true, 
    //... 
} 

現在你可以檢查該事件已在自定義屬性eventRender事件。

eventRender: function(copiedEventObject,element) { 
    if(copiedEventObject.isCustom){ 
    //... 
} 
+0

我應該把這個'renderEvent'方法裏面?代碼看起來不錯,但它不起作用。 –

1

感謝您的幫助。它幫助我解決了這個問題。

但這代碼只返回的對象和did'nt顯示圖像:

var icon = $(document.createElement('div')); 
    icon.css('background-image',"url(icons/kalender_medicin_100px.png)"); 
    element.find('.fc-event-title').html(icon + copiedEventObject.title); 

所以insted的使用:

icon.css('background-image',"url(icons/kalender_medicin_100px.png)"); 

我放置在圖像中的fc-event-title div。因此,解決辦法是這樣的:

element.find('.fc-event-title').html('<p>Ingen migræne idag</p><img src="icons/kalender_glad_smiley.png"/>'); 

唯一的問題是,我不能使用html方法內部變量,但是在這種情況下它不是一個問題。 再次感謝