回答
看代碼,我找不到一個非常簡單的方法來做到這一點。原因是,當您添加的結束時間將其添加到開始時間跨度,所以這裏是我想出了一個解決方案:
$('#cal').fullCalendar({
'events': test,
'timeFormat': 'H:mm - {H:mm}'
});
$('.fc-event-time').each(function() {
var obj = $(this);
var parent = $(this).parent();
var time = $(this).text();
var start = time.split(' - ')[0];
var finish = time.split(' - ')[1];
obj.text(start);
parent.append('<span class="fc-event-time" style="float: right;">' + finish + '</span>');
});
- 首先,添加
'timeFormat'
日曆(我假設你已經擁有它要顯示的完成時間),給次分離-
(這將允許兩次分裂)- 注意任何時間內
{}
將是結束時間。
- 注意任何時間內
- 接着得到jQuery來循環通過每個元件與類
fc-event-time
(其由fullCalendar加到時間)。 - 現在我們需要掌握時間的父母,以便稍後添加元素。
- 下獲得的時間和分離的
-
(空間破折號空間) - 現在設置的原始持有人有兩個起點和終點所以它僅僅是個開始。
- 現在將另一個跨度元素添加到父級,這是事件的標題,但將其浮動到右側並添加結束時間。
按justkt的意見,這讓我想到,上面貼只會在頁面加載時運行的方法,所以當你改變了看法,就不會再運行。
爲了解決這個問題,加上當事件被渲染的回調:
$('#cal').fullCalendar({
'events': test,
'eventRender' : renderEvents,
'timeFormat': 'H:mm - {H:mm}',
});
function renderEvents(){
$('.fc-event-time').each(function() {
var obj = $(this);
if (!obj.hasClass('finish-moved')) {
var parent = $(this).parent();
var time = $(this).text();
var start = time.split(' - ')[0];
var finish = time.split(' - ')[1];
obj.text(start);
parent.append('<span class="fc-event-time finish-moved" style="float: right;">' + finish + '</span>');
obj.addClass('finish-moved');
}
});
}
這需要多一點的邏輯添加到它,事件渲染似乎是要求每個事件,所以當完成時間跨度被添加,下一次循環運行它會嘗試分割完成時間,所以停止添加類finish-moved
,以便它不再受到影響。
另一個更新爲每justkt「再次感言:
當回調被調用時會通過它影響的對象,這樣你就可以‘上只是工作’,而不是運行多個循環:
$('#cal').fullCalendar({
'events': test,
'eventRender': renderEvents,
'timeFormat': 'H:mm - {H:mm}',
});
function renderEvents(e, a) {
var startObj = $(a).find('.fc-event-time');
var time = $(startObj).text().split(' - ');
$(startObj).text(time[0]);
$(a).find('.fc-event-inner').append('<span class="fc-event-time" style="float: right;">' + time[1] + '</span>');
}
這是一個非常相似的校長,纔剛剛運行在其上叫個事件e回調所以應該減少資源飢餓。
您可以將其轉換爲可以更改渲染樣式的eventRender掛鉤。 – justkt 2011-04-07 13:57:53
@justkt - 我對這個事實說明了這一點,它可以在頁面加載時起作用,但不會影響視圖的變化,所以只是尋找正確的回調來掛鉤並發現你的評論歡呼!我已經添加到上面的答案! – Scoobler 2011-04-07 14:15:36
@Scoobler - 看起來不錯。就我個人而言,我會掛鉤到[eventRender](http://arshaw.com/fullcalendar/docs/event_rendering/eventRender/),以便它只會發生在新提供的事件中,並將其範圍在提供的元素參數上,但是您看起來工作。 – justkt 2011-04-07 14:33:54
- 1. FullCalendar開始/結束時間可見?
- 2. 是否可以在滑動時更改gridview圖像的位置?
- 3. 是否可以結束OO?
- 4. Fullcalendar顯示事件的結束時間
- 5. jQuery FullCalendar clientEvents()結束時間未定義
- 6. Fullcalendar以固定的結束時間添加事件
- 7. FullCalendar - 是否可以更改/添加文本?
- 8. 是否可以更改EF Migrations「Migrations」文件夾的位置?
- 9. 是否可以在qwt中更改軸的位置?
- 10. 是否可以更改Gtk.MessageDialog標題文本的位置?
- 11. 是否可以在richtextbox中更改文本的位置?如何?
- 12. Fullcalendar事件的結束時間是缺少
- 13. 可能改變netStream結束時間?
- 14. 是否可以更改dnx/dotnetcore軟件包緩存位置
- 15. 是否可以結束SKAction的中間動作?
- 16. 是修改過程的開始時間還是結束時間
- 17. 是否可以在保持「右上」的同時更改背景位置?
- 18. wp7:當我的位置更改時,是否可以自動觸發?
- 19. 是否可以檢測JavaScript打開窗口的位置何時更改?
- 20. 是否可以實時更改菜單?
- 21. Mobiscroll時間更改驗證開始時間和結束時間
- 22. 是否可以更改UILocalNotification的顯示持續時間?
- 23. 是否可以更改Android中的顯示時間?
- 24. 是否可以像更改.vim一樣更改vrapper的設置?
- 25. Angular 2中的路由更改時的結束時間間隔
- 26. 是否可以在動畫重複中更改ValueAnimator的開始/結束值?
- 27. 在d3中,是否可以動態更改路徑位置開始補間的位置?
- 28. 時間軸橫幅 - 是否可以使用api更改?
- 29. 是否可以爲旋轉和位置分配約束?
- 30. FullCalendar FullCalendar:在放置功能中設置事件結束
是的可能 – TJHeuvel 2011-04-07 09:38:06
是的,你必須做一些風格修改。你現在可以發佈它的風格嗎? – Luci 2011-04-07 11:28:58