我想知道是否有方法可以中止dojo中的默認拖放操作。我做了一些自定義操作的功能,Dojo中止在dnd/drop /中的拖放操作
dojo.subscribe("/dnd/drop/before", function(source, nodes, iscopy){
//Custom manipulation
});
而從這個功能,我想取消的下降,類似於當你按下ESC鍵會發生什麼?
感謝
我想知道是否有方法可以中止dojo中的默認拖放操作。我做了一些自定義操作的功能,Dojo中止在dnd/drop /中的拖放操作
dojo.subscribe("/dnd/drop/before", function(source, nodes, iscopy){
//Custom manipulation
});
而從這個功能,我想取消的下降,類似於當你按下ESC鍵會發生什麼?
感謝
可以發佈主題dnd/cancel
,即dojo.publish('/dnd/cancel')
,然後調用dojo.dnd.manager().stopDrag()
取消下降。
但推薦的方法是在當前節點不可丟棄時自定義checkAcceptance()
的dojo.dnd.Source
以返回false
。在dojo dnd的doc中查找更多詳情。
對我來說,覆蓋onDrop
就像一個魅力。加入到doc,我有類似的東西:
var source2 = new dojo.dnd.Source("source", {
onDrop : function(source, nodes, copy) {
if (canProceedCondition) {
this.onDropExternal(source, nodes, copy);
}
}
});