我剛剛發現了fullCalendar jQuery插件,它幾乎可以完成我爲構建的約會計劃服務所需的一切。但是,我遇到了一個小問題。jQuery ui.draggable - 更改當前拖動的對象(在fullCalendar中)
fullCalendar agendaDay視圖內有「事件」元素可拖動,但它們被鎖定到可用時隙的tds。我想保持這種捕捉時間,但也可以將事件完全拖到日曆之外(這是來自舊版本系統的行爲要求)。
我的想法是在日曆表的mouseout事件上製作對象的克隆;這是有效的,但是用戶必須單擊並從原始對象中單獨拖動克隆,而不是克隆被拖動。
一旦用戶嘗試將「事件」元素拖到表格外,我需要將「正在被拖動」狀態轉移到克隆。這是否有可能?我可以使用更簡單的解決方案嗎?
這是我的代碼,它克隆。 eventDragStart是當用戶開始拖動一個關於(http://arshaw.com/fullcalendar/docs/triggered-actions.php)的事件時調用的「觸發動作」,其中$(this)設置爲事件元素,event是calEvent(實際數據項 - 此處不相關),js是javascript事件(我得到座標),ui是ui對象引用。 「.fc」是日曆,「#display_box」是包含這部分界面的父元素。 (順便說一下,這個定位目前還不能正常工作,但現在這是次要的優先事項)。
...
eventDragStart: function (event, js, ui) $\{
var eventElement = $(this);
$(".fc").mouseout(function() {
eventElement.clone().css({'z-index':99999, top:js.clientY, right:js.clientX).appendTo("#display_box").draggable({helper: 'original'});
$(".fc").unbind("mouseout");
});
},
....
我希望這對任何沒有使用過fullCalendar的人都很清楚。我非常感謝任何幫助,對不起,這很久。
感謝您的指針;我嘗試過,但克隆的對象仍然不會變成「當前」可拖動對象;該克隆只是作爲另一個單獨的可拖動對象出現在文檔中,而不是我想要的連續拖動。 –