前言:

前言:最近一直忙于生活中的事情,今天有时间写个日记吧=吧,在开发移动端的时候经常用到拖拽模块 ,移动端拖拽事件也是开发中经常用到的情况,所以现在自己整一个,废话不多说


代码部分:

在components里面创建一个公共组件dragMove.vue

写下如上代码:(你们直接复制就可以使用)

<!-- 拖拽滑动效果 -->
<template><div id="item_box" @click="goMove" @touchstart="down" @touchmove="move"         @touchend="end">//这里注意,我使用了阿里图标,你们使用的话,删除掉写自己的样式就好<i class="iconfont icon-a-bianlidian2x"></i></div>
</template><script>
export default {name: "defaultDrag",data() {return {flags: false,position: { x: 0, y: 0 },nx: "",ny: "",dx: "",dy: "",xPum: "",yPum: "",};},methods: {goNext() {this.$emit("goMove");},// 实现移动端拖拽down() {let item_box = document.querySelector("#item_box");this.flags = true;var touch;if (event.touches) {touch = event.touches[0];} else {touch = event;}this.maxW = document.body.clientWidth - item_box.offsetWidth;this.maxH = document.body.clientHeight - item_box.offsetHeight;this.position.x = touch.clientX - item_box.offsetLeft;this.position.y = touch.clientY - item_box.offsetTop;this.dx = touch.clientX;this.dy = touch.clientY;},move(event) {event.preventDefault();let item_box = document.querySelector("#item_box");if (this.flags) {var touch;if (event.touches) {touch = event.touches[0];} else {touch = event;}this.nx = touch.clientX - this.position.x;this.ny = touch.clientY - this.position.y;if (this.nx < 0) {this.nx = 0;} else if (this.nx > this.maxW) {this.nx = this.maxW;}if (this.ny < 0) {this.ny = 0;} else if (this.ny >= this.maxH) {this.ny = this.maxH;}item_box.style.left = this.nx + "px";item_box.style.top = this.ny + "px";document.addEventListener("touchmove",function() {// event.preventDefault()},false);}},//鼠标释放end() {this.flags = false;},},
};
</script><style  lang="scss" scoped>
#item_box {width: 1rem;height: 1rem;position: fixed;z-index: 1000;bottom: 60px;right: 0.4rem;border-radius: 50%;border: 2px solid #ffffff;box-shadow: 0 0 0.4rem 2px skyblue;background: #81f8e8;display: flex;justify-content: center;align-items: center;.iconfont {color: orange;}
}
</style>

然后在你们需要使用拖拽的组件中引入 dragMove.vue子组件  就好  

(不要忘记在components中注册子组件哟)

//:goMove是子传夫的事件,不用执行任何步骤,写到methods中就好
<dragMove  @goMove="watchCar"></dragMove>

效果图如下:

都给俺点赞!!!

vue移动端实现拖拽相关推荐

  1. vue 移动端可拖拽式icon图标

    需求描述:在移动端页面悬浮一个可随便拖拽的图标,类似于苹果手机的辅助触控小圆点,并且可随意拖动. 预览: 组件代码如下: <template><div class="ys- ...

  2. Vue.Draggable 实现组件拖拽

    Vue.Draggable 实现组件拖拽 特性 支持触摸设备 支持拖拽和选择文本 支持智能滚动 支持不同列表之间的拖拽 不以jQuery为基础 和视图模型同步刷新 和vue2的国度动画兼容 支持撤销操 ...

  3. Android仿探探卡片拖拽,Vue 仿探探拖拽卡片的效果

    原标题:Vue 仿探探拖拽卡片的效果 已更新Vue3版,请给前端大全发送关键字vue3仿探探获取Vue3版 类似 Tinder 和 探探 的卡片效果的组件,社区中已经非常多了.我这一版除了可以实现和他 ...

  4. vue+sortable实现表格拖拽

    vue+sortable实现表格拖拽 前言: 支持 vue3.0 支持表格拖拽 支持自定义拖拽 sortable官网 一.下载 sortable npm install sortablejs --sa ...

  5. Vue+el-tree,元素拖拽时出现禁用图标, 请看解决办法

    项目需求:vue+el-tree实现节点拖拽到指定div播放视频: 问题:当节点拖拽时, 出现禁用图标: 一开始以为将禁用图标改变样式或隐藏就可以,一番尝试后, 发现这个图标可能是浏览器默认的, 经过 ...

  6. 基于 Spring Boot + Vue 实现的可视化拖拽编辑的大屏项目

    大家好,今天给小伙伴们分享一个基于 SpringBoot + Vue 实现的可视化拖拽编辑的大屏项目: 简介 这个是一个开源的一个BI平台,酷炫大屏展示,能随时随地掌控业务动态,让每个决策都有数据支撑 ...

  7. html鼠标可拖动窗体,JS实现简单移动端鼠标拖拽

    本文实例为大家分享了JS实现移动端鼠标拖拽的具体代码,供大家参考,具体内容如下 Document #div { width: 100%; height: 200px; background: rosy ...

  8. npm 可视化html编辑器,超给力 Vue.js 可视化H5拖拽编辑器Quark-H5

    前两天有分享一个鲁班H5移动端页面生成器.今天再给大家推荐一款超优秀的Vue H5可视化布局编辑器QuarkH5. quark-h5 基于 vue.js 开源的H5可视化拖放编辑器,star高达1.7 ...

  9. 【Vue版】实现拖拽、排序效果(注意,这个方法在chrome谷歌浏览器上面不适用,dragend会情不自禁触发drag事件先执行,有点像浏览器的一个bug)

    <divclass='dragged':index="$index"draggable='true'@dragstart="dragstart"@drag ...

最新文章

  1. java servlet filter_Java的Servlet、Filter、Interceptor、Listener
  2. 程序员的自我修养--链接、装载与库笔记:目标文件里有什么
  3. RabbitMQ 简介以及使用场景
  4. Python 中 zip() 函数的用法
  5. mysql 10分钟_10分钟入门mysql(含常用的sql语句,mysql常见问题及解决方案)
  6. char varchar java_在数据库中varchar与char的区别
  7. Hey,孙叫兽的2020 CSDN年度报告已出炉,请查收!
  8. js点击复制文本 - 案例篇
  9. cmd运行python脚本处理其他文件_如何在cmd命令行里运行python脚本
  10. C++实现离散余弦变换(参数为二维指针)
  11. 笔记+R︱风控模型中变量粗筛(随机森林party包)+细筛(woe包)
  12. Ignition Vision基本操作
  13. TechTool Pro 11 Mac(硬件检测和系统维护工具)附序列号中文版
  14. 从Shutterstock下载无水印图片
  15. 左右滑屏设置_王者荣耀怎么滑屏操作 滑屏手法详解[多图]
  16. 【壁纸】kali linux 2021.1 自带原版壁纸分享
  17. 给你推荐个软件----印象笔记(everNote)
  18. 如何查找专用 IP 地址?
  19. 通过文件流解压压缩包
  20. 「爬虫教程」吐血整理,最详细的爬虫入门教程

热门文章

  1. 服务器主板插显卡进不了系统,我的主板插上显卡后按电源,开不了机怎么办?...
  2. direction 属性
  3. QT 版本号识别 不同系统区分
  4. Ubuntu安装eigen
  5. webrtc QOS方法二.3(FEC冗余度配置)
  6. 豆瓣再美好,也只是生活中的一瓣
  7. WPS怎么外链网页上的实时数据_什么是外链,如何获取更多的外链?
  8. CHIL-ORACLE-修改
  9. 非上海户籍人员在上海买房需要啥条件?
  10. ptrhon GUI编程