HTML要素またはCSSセレクタ(またはドロップ可能オブジェクト自体への参照)を取得する方法外部のドラッグ可能な要素を落とした。 ( Fullcalendar:外部要素がドロップされた日付ボックスのHTML要素への参照を確実に取得する方法
var pageX = jsEvent.originalEvent.pageX;
var pageY = jsEvent.originalEvent.pageY;
var domElem = document.elementFromPoint(pageX, pageY);
var node = Y.one(domElem).ancestor('#calendar > .fc-content table.fc-border-separate tr > td', true);
は(私はYUI 3 Y.one()と祖先を使用しています:私は、ドロップイベントの座標を使用して、日付ボックスのノードを取得するには、ドロップ()コールバック内で次を使用してみました)メソッドを使用して、必要なノードを取得することができます。
上記では、ドロップがイベントセルの上に表示されない限り、日付ボックスのノードを正しく特定しています日付。しかし、ドロップがイベントセルに着くと、domElemはイベントセルになります。イベントセルは、カレンダーの外にある絶対配置された要素です。上記のancestor()メソッドは機能しません。私もドラッグ可能な要素によって財産を元に戻すobjをドロップ可能への参照を取得しようとしている
:残念ながら
revert: function(droppableObj) {
if(droppableObj === false) {
alert('No droppableObj');
return true;
}
else {
alert(Y.dump({droppableObj: droppableObj}));
return false;
}
},
、上記動作しません。外部要素が正しくドロップされても、復帰機能はカレンダーを削除可能として認識しません。 (詳細については、私の以前のstackoverflow投稿:Fullcalendar: draggable object rejects fullcalendar as droppable even though fullcalendar accepts dropを参照してください)
私が考えることができる唯一の代替案は、drop()コールバックでdateオブジェクトを使用し、正しいfc-dayXX要素を見つけることですかなり扱いにくいようです。私はこれについて既に検索しましたが、今まで何も見つかりませんでした。誰かが提案をしているなら、私に知らせてください。