js实现适配移动端的拖动效果


Posted in Javascript onJanuary 13, 2020

本文实例为大家分享了js实现适配移动端的拖动效果,供大家参考,具体内容如下

1.html

<div id="div1">
 <div id="div2"></div>
</div>

2.js

var flag = false;
var cur = {
 x: 0,
 y: 0
 }
 var nx, ny, dx, dy, x, y;
 
 function down() {
 flag = true;
 var touch;
 if(event.touches) {
 touch = event.touches[0];
  } else {
  touch = event;
 }
 cur.x = touch.clientX;
 cur.y = touch.clientY;
 dx = div2.offsetLeft;
 dy = div2.offsetTop;
 }
 
 function move() {
 if(flag) {
  var touch;
  if(event.touches) {
  touch = event.touches[0];
  } else {
  touch = event;
  }
  nx = touch.clientX - cur.x;
  ny = touch.clientY - cur.y;
  x = dx + nx;
  y = dy + ny;
  div2.style.left = x + "px";
  div2.style.top = y + "px";
  //阻止页面的滑动默认事件
  document.addEventListener("touchmove", function() {
  event.preventDefault();
  }, false);
 }
 }
 //鼠标释放时候的函数
 function end() {
 flag = false;
 }
 var div2 = document.getElementById("div2");
 div2.addEventListener("mousedown", function() {
 down();
 }, false);
 div2.addEventListener("touchstart", function() {
 down();
 }, false)
 div2.addEventListener("mousemove", function() {
 move();
 }, false);
 div2.addEventListener("touchmove", function() {
 move();
 }, false)
 document.body.addEventListener("mouseup", function() {
 end();
 }, false);
 div2.addEventListener("touchend", function() {
 end();
}, false);

效果:

js实现适配移动端的拖动效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
一页面多XMLHttpRequest对象
Jan 22 Javascript
js 页面传参数时 参数值含特殊字符的问题
Dec 13 Javascript
Javascript 获取链接(url)参数的方法[正则与截取字符串]
Feb 09 Javascript
Extjs grid添加一个图片状态或者按钮的方法
Apr 03 Javascript
D3.js实现柱状图的方法详解
Sep 21 Javascript
jQuery简单自定义图片轮播插件及用法示例
Nov 21 Javascript
javaScript语法总结
Nov 25 Javascript
微信小程序 http请求的session管理
Jun 07 Javascript
原生JS实现循环Nodelist Dom列表的4种方式示例
Feb 11 Javascript
基于Vue实现图片在指定区域内移动的思路详解
Nov 11 Javascript
Vue $mount实战之实现消息弹窗组件
Apr 22 Javascript
vue-element-admin项目导入和导出的实现
May 21 Vue.js
Vue 嵌套路由使用总结(推荐)
Jan 13 #Javascript
优化Vue中date format的性能详解
Jan 13 #Javascript
JS document文档的简单操作完整示例
Jan 13 #Javascript
JavaScript数组排序小程序实现解析
Jan 13 #Javascript
JS document form表单元素操作完整示例
Jan 13 #Javascript
JS校验与最终登陆界面功能完整示例
Jan 13 #Javascript
vue+vant实现商品列表批量倒计时功能
Jan 13 #Javascript
You might like
paypal即时到账php实现代码
2010/11/28 PHP
去除php注释和去除空格函数分享
2014/03/13 PHP
php递归删除目录下的文件但保留的实例分享
2014/05/10 PHP
php cookie中点号(句号)自动转为下划线问题
2014/10/21 PHP
PHP+APACHE实现网址伪静态
2015/02/22 PHP
PHP中$_SERVER使用说明
2015/07/05 PHP
我见过最全的个人js加解密功能页面
2007/12/12 Javascript
一个可以兼容IE FF的加为首页与加入收藏实现代码
2009/11/02 Javascript
使用Jquery来实现可以输入值的下拉选单 雏型
2011/12/06 Javascript
js实现一个省市区三级联动选择框代码分享
2013/03/06 Javascript
js实现浏览本地文件并显示扩展名的方法
2015/08/17 Javascript
原生js封装二级城市下拉列表的实现代码
2016/06/16 Javascript
详解Javascript数据类型的转换规则
2016/12/12 Javascript
无法获取隐藏元素宽度和高度的解决方案
2017/03/07 Javascript
VUE2.0+Element-UI+Echarts封装的组件实例
2018/03/02 Javascript
详解如何使用nvm管理Node.js多版本
2019/05/06 Javascript
使用 node.js 模仿 Apache 小部分功能
2019/07/07 Javascript
ant design vue中表格指定格式渲染方式
2020/10/28 Javascript
[03:31]DOTA2英雄基础教程 大地之灵
2013/12/17 DOTA
Python脚本在Appium库上对移动应用实现自动化测试
2015/04/17 Python
浅谈numpy数组中冒号和负号的含义
2018/04/18 Python
python使用threading.Condition交替打印两个字符
2019/05/07 Python
django 控制页面跳转的例子
2019/08/06 Python
Python高阶函数、常用内置函数用法实例分析
2019/12/26 Python
使用Tkinter制作信息提示框
2020/02/18 Python
python安装dlib库报错问题及解决方法
2020/03/16 Python
css3一款3D字体带阴影效果的实现步骤
2013/03/20 HTML / CSS
天猫超市:阿里巴巴打造的网上超市
2016/11/02 全球购物
机工车间主任岗位职责
2014/03/05 职场文书
学生评语大全
2014/04/18 职场文书
法定代表人资格证明书
2014/09/11 职场文书
合法的离婚协议书范本
2014/10/23 职场文书
行政主管岗位职责
2015/02/03 职场文书
JavaScript实现登录窗体
2021/06/22 Javascript
JAVA API 实用类 String详解
2021/10/05 Java/Android
python的列表生成式,生成器和generator对象你了解吗
2022/03/16 Python