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 相关文章推荐
js 表单验证方法(实用)
Apr 28 Javascript
js实现的仿新浪微博完美的时间组件升级版
Dec 20 Javascript
javascript之典型高阶函数应用介绍二
Jan 10 Javascript
JavaScript fontsize方法入门实例(按照指定的尺寸来显示字符串)
Oct 17 Javascript
javascript使用正则表达式检测IP地址
Dec 03 Javascript
JavaScript替换当前页面的方法
Apr 03 Javascript
JS选中checkbox后获取table内一行TD所有数据的方法
Jul 01 Javascript
javascript数组克隆简单实现方法
Dec 16 Javascript
用javascript获取任意颜色的更亮或更暗颜色值示例代码
Jul 21 Javascript
JS实现简单的浮动碰撞效果示例
Dec 28 Javascript
vue-cli 打包后提交到线上出现 &quot;Uncaught SyntaxError:Unexpected token&quot; 报错
Nov 06 Javascript
浅谈JavaScript节流和防抖函数
Aug 25 Javascript
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
php代码把全角数字转为半角数字
2007/12/10 PHP
PHP6 中可能会出现的新特性预览
2014/04/04 PHP
浅析php原型模式
2014/11/25 PHP
php利用fsockopen GET/POST提交表单及上传文件
2017/05/22 PHP
PHP仿qq空间或朋友圈发布动态、评论动态、回复评论、删除动态或评论的功能(上)
2017/05/26 PHP
PHP基于socket实现的简单客户端和服务端通讯功能示例
2017/07/10 PHP
Yii框架页面渲染操作实例详解
2019/07/19 PHP
PHP设计模式之外观模式(Facade)入门与应用详解
2019/12/13 PHP
PHP设计模式(七)组合模式Composite实例详解【结构型】
2020/05/02 PHP
用javascript父窗口控制只弹出一个子窗口
2007/04/10 Javascript
怎么选择Javascript框架(Javascript Framework)
2013/11/22 Javascript
javascript中的作用域和上下文使用简要概述
2013/12/05 Javascript
调用jQuery滑出效果时闪烁的解决方法
2014/03/27 Javascript
js获取指定日期周数以及星期几的小例子
2014/06/27 Javascript
基于豆瓣API+Angular开发的web App
2015/01/02 Javascript
JavaScript中DOM详解
2015/04/13 Javascript
javascript实现在下拉列表中显示多级树形菜单的方法
2015/08/12 Javascript
Sublime Text 3常用插件及安装方法
2015/12/16 Javascript
微信小程序 MD5加密登录密码详解及实例代码
2017/01/12 Javascript
Vue单页式应用(Hash模式下)实现微信分享的实例
2017/07/21 Javascript
vue与bootstrap实现简单用户信息添加删除功能
2019/02/15 Javascript
浅谈layui 表单元素的选中问题
2019/10/25 Javascript
es6中let和const的使用方法详解
2020/02/24 Javascript
js实现列表按字母排序
2020/08/11 Javascript
使用Python获取CPU、内存和硬盘等windowns系统信息的2个例子
2014/04/15 Python
python使用wxPython打开并播放wav文件的方法
2015/04/24 Python
python实现爬取千万淘宝商品的方法
2015/06/30 Python
python3 破解 geetest(极验)的滑块验证码功能
2018/02/24 Python
解决pycharm py文件运行后停止按钮变成了灰色的问题
2018/11/29 Python
新建文件时Pycharm中自动设置头部模板信息的方法
2020/04/17 Python
Python数据可视化实现漏斗图过程图解
2020/07/20 Python
日本最大的眼镜购物网站:Oh My Glasses
2016/11/13 全球购物
学生意外伤害赔偿协议书
2014/09/17 职场文书
企业培训简报范文
2015/07/20 职场文书
升学宴学生致辞
2015/09/29 职场文书
《帝国时代4》赛季预告 新增内容编译器可创造地图
2022/04/03 其他游戏