使用jsPlumb的一个普通的特性就是元素的拖放。方法以下:myInstanceOfJsPlumb.draggable("elementId");
html
元素id的字符串web
元素数组
list类型对象,内容是元素或字符串
举个栗子浏览器
数组jsPlumbInstance.draggable(["elementOne", "elementTwo"]);
code
jQuery选择器jsPlumbInstance.draggable($(".someClass"));
htm
节点列表对象
var els = document.querySelectorAll(".someClass"); jsPlumbInstance.draggable(els);
若是你真的不能使用 jsPlumb.draggable,那你就不得不经过jsPlumb.repaint手动处理。
jsPlumb是jsPlumbInstance类的一个实例。若是你使用本身的实例,确保你调用的是这些实例的拖放方法,而不是全局的。element
若是你是用的是vanilla jsPlumb,它提供一个打包好的库叫Katavorio——提供多种拖放方式。字符串
你必须把你要设置可拖放的元素设置为position:absolute
。it
not finished
使容器内的内容也能够拖拽。
jQuery:
jsPlumb.draggable($("someSelector"), { containment:"parent" });
Vanilla
jsPlumb.draggable("someElement", { containment:true });
not finished
not finished
not finished
浏览器默认的拖拽行为是选择DOM里的元素。jQuery废止了这种行为,vanilla jsPlumb没有。为了支持这种状况,被拖拽元素都增长了_jsPlumb_drag_select
这个类。
在拖拽结束后被去除。
内容以下:
._jsPlumb_drag_select * { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }