有一种在VueJS?中实现拖放的简单方法。我只想将一个div移到另一个。在网络上看,似乎只是用于进行可排序的拖放操作的库
答案 0 :(得分:0)
这是使用核心JavaScript开发的基本drag and drop。 希望对您有所帮助。
class App {
static init() {
App.box = document.getElementsByClassName('box')[0]
App.box.addEventListener("dragstart", App.dragstart)
App.box.addEventListener("dragend", App.dragend)
const containers = document.getElementsByClassName('holder')
for(const container of containers) {
container.addEventListener("dragover", App.dragover)
container.addEventListener("dragenter", App.dragenter)
container.addEventListener("dragleave", App.dragleave)
container.addEventListener("drop", App.drop)
}
}
static dragstart() {
this.className += " held"
setTimeout(()=>this.className="invisible", 0)
}
static dragend() {
this.className = "box"
}
static dragover(e) {
e.preventDefault()
}
static dragenter(e) {
e.preventDefault()
this.className += " hovered"
}
static dragleave() {
this.className = "holder"
}
static drop() {
this.className = "holder"
this.append(App.box)
}
}
document.addEventListener("DOMContentLoaded", App.init)
答案 1 :(得分:0)