元素添加 :draggable="true"
@dragend="dragend($event, index)" //拖动结束触发事件
@dragenter="dragenter($event, index)" //拖动进入元素触发事件
@dragover="dragover($event, index)"//拖动覆盖元素松开触发事件
@dragstart="dragstart(index)" //拖动开始触发事件
<div style="width: 140px;float: left;line-height: 33px;height: 33px;margin-right: 8px;" v-for="(item,index) in exportcheckedKeyss" @dragend="dragend($event, index)" @dragenter="dragenter($event, index)" @dragover="dragover($event, index)" @dragstart="dragstart(index)" :draggable="true" id="" > {{index+1}}.{{item.text}} </div>
事件方法
dragend(e,index){ console.log(index); // 避免源对象触发自身的dragenter事件 if (this.dragIndex !== index) { console.log(this.exportcheckedKeyss); let start = this.exportcheckedKeyss[index] let now = this.exportcheckedKeyss[this.dragIndex] this.exportcheckedKeyss.splice(this.dragIndex,1,start) this.exportcheckedKeyss.splice(index,1,now) console.log(this.exportcheckedKeyss); } console.log("我结束了"); }, dragstart(index) { console.log(index); }, dragenter(e, index) { e.preventDefault(); this.dragIndex = index; }, dragover(e, index) { console.log(index); e.preventDefault(); },
- THE END -
最后修改:2022年7月28日
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:https://www.95app.top/vue-%e6%8b%96%e5%8a%a8%e4%ba%8b%e4%bb%b6/