js 如何实现拖动滑块
js 如何实现拖动滑块
实现拖动滑块,先分析,滑块可以拖动应该改变滑块在页面中的坐标,那就采用定位拿到元素的 top 和 left 对它们进行赋值,接下来就是准备事件,既然是鼠标拖动应该具备 mousedown
,mousemove
,mouseup
三种事件,通过 mousedown
鼠标按下事件选中滑块,mousemove
事件拖动滑块,在拖动滑块的时候获取鼠标在可视窗口的坐标赋值给滑块的 top 和 left
具体代码实现
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>* {margin: 0;padding: 0;box-sizing: border-box;}div {width: 60px;height: 60px;background-color: coral;border-radius: 20%;position: absolute;border: 6px solid skyblue;left: 0;top: 0;}</style>
</head><body><div></div><script>let div = document.querySelector('div')let x, ylet fn = function (e) {// console.log('hhhhhhhh')div.style.left = e.clientX - x + 'px'div.style.top = e.clientY - y + 'px'if (e.clientX - x < 30) {div.style.left = 0}if (e.clientY - y < 30) {div.style.top = 0}if (e.clientX - x > document.documentElement.clientWidth - div.offsetWidth - 30) {div.style.left = document.documentElement.clientWidth - div.offsetWidth + 'px'}if (e.clientY - y > document.documentElement.clientHeight - div.offsetHeight - 30) {div.style.top = document.documentElement.clientHeight - div.offsetHeight + 'px'}}div.addEventListener('mousedown', function (e) {x = e.offsetXy = e.offsetYdocument.addEventListener('mousemove', fn)})div.addEventListener('mouseup', function () {document.removeEventListener('mousemove', fn)})</script>
</body></html>
运行
js 如何实现拖动滑块相关推荐
- html css工资条样式,JS+CSS3交互式拖动滑块选择工资条代码
一款JS+CSS3交互式拖动滑块选择工资条代码,可以托工工资下面的滑块来实时改变工资的数值大小,除了数字变化的同时还有一个颜色的平滑变化,当数值到最大值时,有一个文字的摆动动画特效. 查看演示 下载资 ...
- css3 滑动验证,Vue 实现拖动滑块验证功能(只有css+js没有后台验证步骤)
vue验证滑块功能,在生活中很多地方都可以见到,那么使用起来非常方便,基于vue如何实现滑块验证呢?下面通过代码给大家讲解. 效果图如下所示: 拖动前 拖动后 代码引用的css与js都是线上的 将代码 ...
- 原生js实现拖动滑块验证
拖动滑块验证是现在的网站随处可见的,各式各样的拖动法都有. 下面实现的是某宝的拖动滑块验证: <!DOCTYPE html> <html lang="en"> ...
- 拖动滑块验证——原生JS
** 拖动滑块验证--原生JS ** 大体思路: 1,拖动滑块验证我们首先要分析需要什么事件,怎么触发拖动滑块. 2,首先需要点击事件,当你点击鼠标的时候获取到一个X轴的距离. 3,还需要一个鼠标移动 ...
- html实现鼠标移动波纹效果,js实现拖动滑块和点击水波纹效果
本篇文章就给大家介绍js实现拖动滑块效果和点击水波纹效果的方法.有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助. 拖动滑块效果: 先看看效果图: Document input[type ...
- jQuery手机触屏拖动滑块验证跳转插件
HTML: <!DOCTYPE html> <html lang="en"> <head> <title>jQuery手机触屏拖动滑 ...
- 拖动滑块验证--vue实现
代码引用的css与js都是线上的 将代码全部复制到一个html中可以直接打开,极其简单. 来分析一下代码 底色div上放了一个变色div再放一个提示字的div最后加一个滑块div 给滑块div绑定鼠标 ...
- js原生刻度尺滚动滑块插件
为什么80%的码农都做不了架构师?>>> js原生刻度尺滚动滑块插件 用的MUI框架,原生兼容性很好,性能也更好,所以费了很大的力气改成原生的分享给大家. 有时间了改成手机版. ...
- 小程序 拖动滑块验证(自定义组件 插件分享)
效果图: 文章目录: #1 创建组件 #2 组件编码 MoveVerify.wxss MoveVerify.wxml MoveVerify.js #3 页面引用 在页面的 json 文件中引用组件 在 ...
- JavaScript实现拖动滑块验证(方法已封装)
前提 之前写了一篇博文,题目是<JavaScript实现拖动滑块验证>,里面都是用最简单的方式实现的.后来,群里大神推荐了一款unlock.js插件,称作幻灯片解锁插件.在这里附上它的gi ...
最新文章
- 机器学习(11)线性回归(2)实战 -- 正规方程优化、梯度下降优化(波士顿房价预测)
- 星座图与IQ调制总结+BPSK、QPSK、8PSK、16QAM等的区别与总结
- 萤石的云存储到期怎么启动内存卡_3款萤石智能入户单品 让普通入户门秒变智能...
- centos 6.0安装杀毒软件clamAV 0.98
- 前端工程师面经——概述及面试技巧加考点篇(一)
- python 某个数是不是在某个范围内_教写一个简单的python小程序(04)
- 如何通过 Tampermonkey 快速查找 JavaScript 加密入口
- JSP — GET 与 POST 的区别
- map slice综合示例 go语言
- NGINX简介及工作原理
- 华为android强刷系统下载地址,华为强刷救砖卡刷包合集下载(一)共707GB
- 关于PMSM的弱磁与MTPA结合控制超详细分析
- Python之面向对象-类与 类之间的关系
- 最全面的免费可商用素材网站合集
- 拍沪牌服务器响应,拍中了四张沪牌,再来聊聊拍牌经验
- 网络打印机计算机服务,在Windows7中添加网络打印机的解决方案提示“本地打印机后台处理程序服务未运行”...
- Prometheus实战--Uber背书的存储解决方案M3
- arduino 超详细的开发入门指导
- php编网页版计算器,php编程实现简单的网页版计算器功能示例
- 暖通空调远程监控解决方案
热门文章
- [高效Mac] 多显示器快速切换鼠标焦点和移动窗口
- 前端常见开发英语单词大全
- Android速度仪表盘,速度评级小车动画(模仿电脑版360宽带测速器)
- AppFabric 1.1: installation error 错误代码 1603 windows server 2016 sharepoint 2019 Preparation Tool
- 2014中国十大管理实践-世界经理人网站
- 一个简单的dw网页制作作业,学生个人html静态网页制作成品代码——怪盗基德动漫主题网页成品(15页)
- Microsoft Visual Studio 2010(vs2010) 中文版安装
- 详解 ManualResetEvent
- 机房收费系统-数据库设计说明书
- 微信公众号服务器管理员权限,公众号管理员和运营者的区别是什么?公众号管理员需要承担责任吗?...