JS如何实现模态框拖拽动态效果


本篇内容主要讲解“JS如何实现模态框拖拽动态效果”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性免费云主机域名强。下面就让小编来带大家学习“JS如何实现模态框拖拽动态效果”吧!在实现这个案例效果首先我们了解几个属性,offsetLeft.offsetTop,e.pageX,e.pageY;这几个量都掌握以后就可以操作了分别解释一下:1.offsetLeft:指的是返回一个带有定位父元素左边偏移量的值,当然如果需要操作的元素的父元素没有定位,那么它返回的就是距离浏览器最左侧页面的距离。
2.offsetTop:指的是返回一个带有定位父元素顶部偏移量的值,当然如果需要操作的元素的父元素没有定位,那么它返回的就是距离浏览器最顶部页面的距离。
3.e.pageX是指鼠标距离浏览器最左侧的值。
4.e.pageY是指鼠标距离浏览器顶部的值。tips: offsetLeft获取的值是number类型,不带像素值px,但是通过style.left获取的值就带px,做对比记忆。口诀:如果想获取元素的偏移量或者大小值那就用offset如果想给某元素设置值那么就用style,记得给设置的值后面加上+‘px’;那么细说一下,offset与style的区别:offsetoffset 可以得到任意样式表中的样式值,仅仅是个值,不含px单位offset 系列获得的数值是没有单位的offsetWidth 包含padding+border+widthoffsetWidth 等属性是只读属性,只能获取不能赋值【重点】所以,我们想要获取元素大小位置,用offset更合适stylestyle 只能得到行内样式表中的样式值,此时是带单位px的。style.width 获得的是带有单位的字符串style.width 获得不包含padding和border 的值style.width 是可读写属性,可以获取也可以赋值【重点】所以,我们想要给元素更改值,则需要用style改变以上我们掌握以后,那么我们愉快的动手实现需求吧…案例需求:1.点击弹出层,会弹出模态框, 并且显示灰色半透明的遮挡层。2.点击关闭按钮,可以关闭模态框,并且同时关闭灰色半透明遮挡层。3.鼠标放到模态框最上面一行,可以按住鼠标拖拽模态框在页面中移动。4.鼠标松开,可以停止拖动模态框移动案例分析:1.点击弹出层, 模态框和遮挡层就会显示出来 display:block;
2.点击关闭按钮,模态框和遮挡层就会隐藏起来 display:none;
3.在页面中拖拽的原理:鼠标按下并且移动, 之后松开鼠标
4.触发事件是鼠标按下mousedown,鼠标移动mousemove 鼠标松开 mouseup
5.拖拽过程: 鼠标移动过程中,获得最新的值赋值给模态框的left和top值,这样模态框可以跟着鼠标走了
6.鼠标按下触发的事件源是最上面一行,就是 id 为 title
7.鼠标的坐标减去 鼠标在盒子内的坐标, 才是模态框真正的位置。
8.鼠标按下,我们要得到鼠标在盒子的坐标。
9.鼠标移动,就让模态框的坐标 设置为 :鼠标坐标 减去盒子坐标即可,注意移动事件写到按下事件里面。
10.鼠标松开,就停止拖拽,就是可以让鼠标移动事件解除代码:结构代码:样式代码:js代码:tips:js代码是单独的一个文件。插入以后记得引入该文件。到此,相信大家对“JS如何实现模态框拖拽动态效果”有了更深的了解,不妨来实际操作一番吧!这里是百云主机网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

相关推荐: 怎么使用unity Shader实现道路引导UV动画

这篇文章主要介绍“怎么使用unity Shader实现道路引导UV动画”的相关知识,小编通过实际案例向大家展示操作过免费云主机域名程,操作方法简单快捷,实用性强,希望这篇“怎么使用unity Shader实现道路引导UV动画”文章能帮助大家解决问题。 上面是画…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 5天前
下一篇 5天前

相关推荐