javascript实现移动端触屏拖拽功能


Posted in Javascript onJuly 29, 2020

本文实例为大家分享了javascript实现移动端触屏拖拽的具体代码,供大家参考,具体内容如下

HTML:

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

CSS:

<style media="screen">
    * {
      margin: 0;
      padding: 0;
    }
    html,body {
      width: 100%;
      height:100%;
    }
    #div1 {
      width: 50px;
      height: 50px;
      background: cyan;
      position: absolute;
    }
</style>

JS:

<script type="text/javascript">
     var div1=document.querySelector('#div1');
     var maxW=document.body.clientWidth-div1.offsetWidth;
     var maxH=document.body.clientHeight-div1.offsetHeight;
 
  div1.addEventListener('touchstart',function(e){
    var ev = e || window.event;
    var touch = ev.targetTouches[0];
    oL = touch.clientX - div1.offsetLeft;
    oT = touch.clientY - div1.offsetTop;
    document.addEventListener("touchmove",defaultEvent,false);
  })
 
 
  div1.addEventListener('touchmove',function(e){
    var ev = e || window.event;
    var touch = ev.targetTouches[0];
    var oLeft = touch.clientX - oL;
    var oTop = touch.clientY - oT;
    if(oLeft<0){
      oLeft=0;
    }else if (oLeft>=maxW) {
      oLeft=maxW;
    }
    if(oTop<0){
      oTop=0;
    }else if (oTop>=maxH) {
      oTop=maxH;
    }
 
    div1.style.left = oLeft + 'px';
    div1.style.top = oTop + 'px';
 
  })
  div1.addEventListener('touchend',function(){ 
    document.removeEventListener("touchmove",defaultEvent);
  })
  function defaultEvent(e) {
 
 
    e.preventDefault();
   }
</script>

说明 :

maxW:div1可移动的最大宽度
maxH:div1可移动的最大高度
oL、oT:鼠标所点位置的坐标

效果:

javascript实现移动端触屏拖拽功能

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

Javascript 相关文章推荐
js 表单验证方法(实用)
Apr 28 Javascript
了解jQuery技巧来提高你的代码
Jan 08 Javascript
基于JQuery的简单实现折叠菜单代码
Sep 15 Javascript
浅谈JavaScript字符集
May 22 Javascript
浅谈JavaScript字符串与数组
Jun 03 Javascript
jQuery实现form表单基于ajax无刷新提交方法详解
Dec 08 Javascript
JavaScript如何实现组合列表框中元素移动效果
Mar 01 Javascript
深入理解选择框脚本[推荐]
Dec 13 Javascript
ndm:NPM的桌面GUI应用程序
Oct 15 Javascript
利用hasOwnProperty给数组去重的面试题分享
Nov 05 Javascript
JS原型与继承操作示例
May 09 Javascript
JS几个常用的函数和对象定义与用法示例
Jan 15 Javascript
Vue实现移动端拖拽交换位置
Jul 29 #Javascript
vue和H5 draggable实现拖拽并替换效果
Jul 29 #Javascript
vue同个按钮控制展开和折叠同个事件操作
Jul 29 #Javascript
JavaScript编写开发动态时钟
Jul 29 #Javascript
js编写简易的计算器
Jul 29 #Javascript
从0到1学习JavaScript编写贪吃蛇游戏
Jul 28 #Javascript
javascript如何使用函数random来实现课堂随机点名方法详解
Jul 28 #Javascript
You might like
php 信息采集程序代码
2009/03/17 PHP
php快速url重写 更新版[需php 5.30以上]
2010/04/20 PHP
Laravel框架在本地虚拟机快速安装的方法详解
2018/06/11 PHP
关于jQuery的inArray 方法介绍
2011/10/08 Javascript
jquery实现图片左右间隔滚动特效(可自动播放)
2013/05/08 Javascript
JavaScript中最简洁的编码html字符串的方法
2014/10/11 Javascript
jquery实现侧边弹出的垂直导航
2014/12/09 Javascript
JQuery中层次选择器用法实例详解
2015/05/18 Javascript
jQuery动态添加可拖动元素完整实例(附demo源码下载)
2016/06/21 Javascript
在线引用最新jquery文件的实现方法
2016/08/26 Javascript
jQuery生成假加载动画效果
2016/12/01 Javascript
vue vuex vue-rouert后台项目——权限路由(适合初学)
2017/12/29 Javascript
妙用缓存调用链实现JS方法的重载
2018/04/30 Javascript
vue脚手架搭建过程图解
2018/06/06 Javascript
Vue.js 事件修饰符的使用教程
2018/11/01 Javascript
jQuery实现动态加载(按需加载)javascript文件的方法分析
2019/05/31 jQuery
vue图片加载失败时用默认图片替换的方法
2019/08/29 Javascript
手机浏览器唤起微信分享(JS)
2020/10/11 Javascript
[00:37]2016完美“圣”典风云人物:rOtk宣传片
2016/12/09 DOTA
用Python编写生成树状结构的文件目录的脚本的教程
2015/05/04 Python
Python实现二叉树结构与进行二叉树遍历的方法详解
2016/05/24 Python
Python安装第三方库及常见问题处理方法汇总
2016/09/13 Python
在OpenCV里实现条码区域识别的方法示例
2019/12/04 Python
python读取raw binary图片并提取统计信息的实例
2020/01/09 Python
de Bijenkorf比利时官网:荷兰最知名的百货商店
2017/06/29 全球购物
俄罗斯苹果优质经销商商店:iPort
2020/05/27 全球购物
高中三年学习生活的自我评价
2013/10/10 职场文书
服装公司总经理岗位职责
2013/11/30 职场文书
总裁办公室主任职责
2014/01/02 职场文书
优秀通讯员事迹材料
2014/01/28 职场文书
企业后勤岗位职责
2014/02/28 职场文书
毕业生就业协议书
2014/04/11 职场文书
环境建议书
2015/02/04 职场文书
爱的教育观后感
2015/06/17 职场文书
Python爬取用户观影数据并分析用户与电影之间的隐藏信息!
2021/06/29 Python
html5实现点击弹出图片功能
2021/07/16 HTML / CSS