📅  最后修改于: 2023-12-03 14:46:50.616000             🧑  作者: Mango
qTest-拖放是一个基于JavaScript的拖放库。它可以帮助程序员轻松实现拖拽元素功能,并提供了一些常用的事件和方法。
可以通过npm安装qTest-拖放:
npm install qtest-dragdrop --save
也可以直接下载压缩包,然后在HTML中引入:
<script src="/path/to/qtest-dragdrop.min.js"></script>
var dragDrop = new qtestDragDrop();
dragDrop.init({
el: '.drag-item', // 拖拽元素选择器
dropArea: '.drop-container' // 拖放区域选择器
});
var options = {
onDrop: function(el, target) { // 拖放结束的回调函数
console.log(el, target);
},
onDragStart: function(el) { // 开始拖拽时的回调函数
console.log(el);
},
onDragEnd: function(el) { // 结束拖拽时的回调函数
console.log(el);
},
onDragEnter: function(el, target) { // 拖拽元素进入拖放区域时的回调函数
console.log(el, target);
},
onDragLeave: function(el, target) { // 拖拽元素离开拖放区域时的回调函数
console.log(el, target);
},
onDragOver: function(el, target) { // 拖拽元素在拖放区域内拖动时的回调函数
console.log(el, target);
}
};
dragDrop.init({
el: '.drag-item',
dropArea: '.drop-container',
...options
});
dragDrop.getAllItems(); // 所有拖拽元素
dragDrop.getAllDropAreas(); // 所有拖放区域
dragDrop.addItem('.new-item'); // 添加一个新的拖拽元素
dragDrop.removeItem('.drag-item'); // 删除一个拖拽元素
dragDrop.addDropArea('.new-area'); // 添加一个新的拖放区域
dragDrop.removeDropArea('.drop-area'); // 删除一个拖放区域
init(options: object)
绑定拖拽元素和拖放区域,并绑定事件处理函数。
getAllItems()
获取所有的拖拽元素。
getAllDropAreas()
获取所有的拖放区域。
addItem(itemSelector: string)
手动添加一个新的拖拽元素,并自动进行绑定。itemSelector为该元素的选择器。
removeItem(itemSelector: string)
手动删除一个已绑定的拖拽元素。itemSelector为该元素的选择器。
addDropArea(areaSelector: string)
手动添加一个新的拖放区域,并自动进行绑定。areaSelector为该区域的选择器。
removeDropArea(areaSelector: string)
手动删除一个已绑定的拖放区域。areaSelector为该区域的选择器。