使用dojo.dnd.Source连接onDndDrop

时间:2011-05-14 12:25:42

标签: events dojo

任何人都可以告诉我如何使用onDndDrop事件及其函数连接dojo / dnd / Source对象

2 个答案:

答案 0 :(得分:0)

如果链接消失或有人想使用AMD,要将 onDndDrop 事件连接到dojo/dnd/Source,您可以编写以下内容:

require(["dojo/dnd/Source", "dojo/parser", "dojo/domReady!"], function(Source) {
    var myDndSource = new Source("myDndSource");
    myDndSource.on("DndDrop", function(source, nodes, copy, target) {
        // Do something
    });
});

例如:

require(["dojo/dnd/Source", "dojo/parser", "dojo/domReady!"], function(Source) {
    var myDndSource = new Source("myDndSource");
    myDndSource.on("DndDrop", function(source, nodes, copy, target) {
        nodes.forEach(function(node) {
           console.log("Dropped '" + node.innerText + "' on source '" + source.node.id + "'");
        });
        console.log("New order: " + source.getAllNodes().map(function(node) {
           return node.innerText;
        }).join(", "));
    });
});

可以在此处找到完整的代码示例:http://jsfiddle.net/RFav3/

答案 1 :(得分:-2)

本教程包含开始使用dojo.dnd所需的一切:

http://www.sitepen.com/blog/2008/06/10/dojo-drag-and-drop-1/