VUE 元素拖拽、移动
元素拖拽
作者:一粒尘土  时间:2019-10-30
使用范围:两个元素位置交换,移动元素到指定位置
涉及函数
| 属性 | 解释 | 
|---|---|
| draggable | 是否允许元素进行拖拽 | 
| dragstart | 拖拽开始触发的函数,可在此获取元素 | 
| dragover | 在目标元素内进行拖动时触发的函数 | 
| dragenter | 当拖拽进入目标元素时出发的函数 | 
| dragend | 拖拽结束 | 
快速熟悉上边表格的知识点,然后结合如下的小demo进行加深记忆
html
<div
  :key="imgIdx"
  v-for="(img, imgIdx) in result"
  :style="'background-image: url('+img.gallery_image_url+');'"
  class="dib wi-17x ht-11x bdr-3 centerimage mr-14 mb-14 pr of-h hover-item graylight-bg"
  :draggable="allowHandle"
  @dragenter="dragEnter($event, img)"
  @dragend="dragEnd($event, img)">
</div>
js
data () {
    return {
        drawTargetEle: {}
    }
},
methods: {
    /**
     * 推拽开始,解决火狐无法拖拽情况
    */
    dragStart (e, item) {
      if (this.allowHandle) {
        e.dataTransfer.setData('aaa', null)
      }
    },
    /**
     * 拖拽元素至目标元素内时触发
     * @item 目标元素
     * @info 可在此处获取,拖拽元素的一系列属性
    */
    dragEnter (e, item) {
      if (this.allowHandle) {
        // 获取推拽的目标元素
        this.drawTargetEle = item
      }
    },
    /**
     * 拖拽完成之后触发
     * @item 目标元素
     * @info 可在此处获取,拖拽元素的目标元素一系列属性
    */
    dragEnd (e, item) {
      console.log(item)
      /**
       * 进行拖拽完成的操作
       */
    },
}
注解
- 另外如需有需监听元素的拖拽情况,可调用对应的函数即可。
- 如果不允许拖动到该元素区域内,可在dragover、dragenter中设置dropEffect:none;禁止拖拽。
欢迎大家关注我的微信公众号,一起学习一起进步
 代码小书生
代码小书生
VUE 元素拖拽、移动的更多相关文章
- vue全局自定义指令-元素拖拽
		小白我用的是vue-cli的全家桶,在标签中加入v-drap则实现元素拖拽, 全局指令我是写在main.js中 Vue.directive('drag', { inserted: function ( ... 
- 基于Vue实现拖拽效果
		参考地址:基于Vue实现拖拽效果 参考链接中讲的比较详细,我只使用了其中自定义指令的方法.整体代码如下: <template> <!-- 卡片 --> <div clas ... 
- Vue 可拖拽组件 Vue Smooth DnD 详解和应用演示
		本文发布自 https://www.cnblogs.com/wenruo/p/15061907.html 转载请注明出处. 简介和 Demo 展示 最近需要有个拖拽列表的需求,发现一个简单好用的 Vu ... 
- Selenium - 实现网页元素拖拽
		Drag and Drop, 使用鼠标实现元素拖拽的操作貌似很复杂, 在Selenium中, 借助OpenQA.Selenium.Interactions.Actions类库中提供的方法, 实现起来还 ... 
- Js元素拖拽功能实现
		Js元素拖拽功能实现 需要解决的问题 最近项目遇到了一个问题,就是用户某个操作需要弹出一个自定义的内容输入框,但是有个缺点,当浏览太大的时候没办法点击确认和取消按钮,应为这个弹出框是采用绝对定位的,取 ... 
- WPF中元素拖拽的两个实例
		今天结合之前做过的一些拖拽的例子来对这个方面进行一些总结,这里主要用两个例子来说明在WPF中如何使用拖拽进行操作,元素拖拽是一个常见的操作,第一个拖拽的例子是将ListBox中的子元素拖拽到ListV ... 
- Selenium WebDriver-通过ActionChains实现页面元素拖拽
		#encoding=utf-8 import unittest import time import chardet from selenium import webdriver class Visi ... 
- html5的元素拖拽
		今天学习了妙味课堂的课程: 在html5中有支持元素拖拽的一些属性和方法: 一些实例代码如下: <div id="div1"></div> <ul&g ... 
- vue内容拖拽放大缩小
		<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ... 
随机推荐
- java 数据相除
			编程的人都知道,java中的“/”.“%”运算,其中前者为取整,后者取余数.那么有没有快捷的运算方法取正常的运算结果呢? /** * TODO 除法运算,保留小数 * @author 袁忠明 * @d ... 
- 0.9.0.RELEASE版本的spring cloud alibaba sentinel+feign降级处理实例
			既然用到了feign,那么主要是针对服务消费方的降级处理.我们基于0.9.0.RELEASE版本的spring cloud alibaba nacos+feign实例添油加醋,把sentinel功能加 ... 
- Ideal设置编码格式
			file-------settings-------file Encodings 
- Linux strace追踪命令详解
			strace介绍 strace命令是一个集诊断.调试.统计与一体的工具,我们可以使用strace对应用的系统调用和信号传递的跟踪结果来对应用进行分析,以达到解决问题或者是了解应用工作过程的目的.当然s ... 
- 随机采样一致算法RANSAC
			A project to learn line, circle and ellipse detection in 2d images: https://github.com/Yiphy/Ransac- ... 
- 使用Docker在本地启动3个MySQL镜像
			首先执行 sudo docker pull mysql 命令下载mysql官方镜像: zifeiy@zifeiy-PC:~$ sudo docker pull mysql Using default ... 
- mssql的update :from语法
			一条Update更新语句是不能更新多张表的,除非使用触发器隐含更新.而表的更新操作中,在很多情况下需要在表达式中引用要更新的表以外的数据.我们先来讨论根据其他表数据更新你要更新的表 一.MS S ... 
- 最新  苏州朗动java校招面经 (含整理过的面试题大全)
			从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.苏州朗动等10家互联网公司的校招Offer,因为某些自身原因最终选择了苏州朗动.6.7月主要是做系统复习.项目复盘.Leet ... 
- 说说Spring XML的头
			部分内容截取自(http://blog.csdn.net/zhch152/article/details/8191377,http://iswift.iteye.com/blog/1657537) 在 ... 
- DataGridView中的Combobox的应用
			在WinForm中DataGridView可谓是应用比较多的数据显示控件了,DataGridView中可以应用各种控件,关于这样的文章网上 已有很多.都是实例化一个控件然后通过DataGridView ... 
