美文网首页
JavaScript拖拽效果

JavaScript拖拽效果

作者: c791f26771db | 来源:发表于2020-03-14 14:47 被阅读0次

要实现JavaScript的拖拽效果,首先我们需要知道事件对象几个有关于实现拖拽效果的坐标。

获取事件对象 var e = e || window.event;

实现拖拽效果的坐标

clientX:鼠标点击位置相对于浏览器可视区域的水平偏移量(不会计算水平滚动的距离)

clientY:鼠标点击位置相对于浏览器可视区域的垂直偏移量(不会计算垂直滚动条的距离)

offsetX:鼠标点击位置相对于触发事件对象的水平距离

offsetY:鼠标点击位置相对于触发事件对象的垂直距离

pageX:鼠标点击位置相对于网页左上角的水平偏移量,也就是clientX加 上水平滚动条的距离

pageY:鼠标点击位置相对于网页左上角的垂直平偏移量,也就是clientY加上垂直滚动条的距离

offsetLeft:如果父元素中有定位的元素,那么就返回距离当前元素最近的定位元素边缘的距离

offsetTop:如果父元素中没有定位元素,那么就返回相对于body左边缘距离

获取元素自身大小:offsetWidth和offsetHeight /  clientWidth和clientHeight

offsetWidth和clientWidth的区别:就是offsetWidth包含边框,clientWidth不包含边框

实现拖拽需要用到:clientWidth、clientHeight、clientX、clientY、offsetLeft、offsetTop

首先搭建好html结构

需要使用定位,子绝父相

css样式

这是css的基本样式

拖拽的JavaScript的代码如下

其中为了使鼠标一直处于小盒子(cover)的最中间,需要减去小盒子宽度的一半。

再减去大盒子距离页面左边的边距和上边的边距就可以得到坐标

还需要限制小盒子在大盒子的中间移动的距离

只要鼠标移入大盒子中,就能直接拖拽小盒子,并且鼠标一直处于小盒子的最中间。这样便完成了简单的拖拽效果。

相关文章

  • JavaScript拖拽效果

    要实现JavaScript的拖拽效果,首先我们需要知道事件对象几个有关于实现拖拽效果的坐标。 获取事件对象 var...

  • 控件拖拽

    JavaScript实现最简单的拖拽效果 HTML5 drag & drop 拖拽与拖放简介 基于HTML5 dr...

  • javascript学习笔记-拖拽效果

    最近开发小程序,用到小程序里的拖拽效果,研究了下底层的原理,发现只要以下三点就可以完成拖拽效果。实现拖拽效果的三个...

  • 拖拽API

    实现拖拽效果 目前实现拖拽效果 HTML5拖拽 源元素事件例子 目标元素事件 从本地拖放图片到页面中 实现拖拽

  • HTML5实现拖拽

    实现拖拽效果源元素 - 要拖拽的文件目标元素 - 要拖拽到哪里去 目前实现拖拽效果使用原生DOM就能实现 - 最麻...

  • 移动拖拽效果

    移动拖拽效果

  • 百度地图——maker(动画)

    禁止拖拽地图 map.disableDragging();//禁止拖拽 maker的动画效果:自定义图片(动画效果...

  • 拖拽效果

    需要提前了解的 运动都需要定位的支持,所以如果想实现拖拽,拖拽目标必须设置position为定位属性。 事件源 拖...

  • SwiftUI中动画Animation(四)手势+动画

    效果 代码 文字添加拖拽组合动画效果 效果: 代码:

  • HTML5拖拽上传

    传统拖拽效果小demohtml5实现拖拽小demo调查问卷小demo拖拽拼图小demo拖拽上传小demo h5拖拽...

网友评论

      本文标题:JavaScript拖拽效果

      本文链接:https://www.haomeiwen.com/subject/rozvshtx.html