效果图:
代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<style type="text/css">
* {
margin: 0;
padding: 0;
}
#slider-box {
width: 300px;
height: 50px;
border-radius: 4px;
background: #ccc;
margin: 250px auto;
position: relative;
}
#slider {
width: 48px;
height: 48px;
border: 1px solid #eee;
text-align: center;
line-height: 48px;
display: inline-block;
background: #fff;
border-radius: 4px;
cursor: move;
position: absolute;
left: 0;
z-index: 5;
}
#slider-text {
text-align: center;
line-height: 50px;
display: inline-block;
width: 100%;
height: 50px;
font-family: "微软雅黑";
position: absolute;
left: 0;
z-index: 4;
}
#slider-bg {
width: 0;
height: 48px;
background: green;
position: absolute;
z-index: 3;
border-radius: 4px;
}
#slider-Emerge {
width: 100px;
background:;
height: 50px;
position: absolute;
}
#stop-go {
width: 48px;
height: 48px;
border: 1px solid #eee;
background:#36F;
position: absolute;
right: -1px;
display: none;
text-align: center;
line-height: 48px;
color: #fff;
font-family: "微软雅黑";
border-radius: 4px;
z-index: 5;
}
div{
-moz-user-select:none;
-webkit-user-select:none;
user-select:none;
}
</style>
</head>
<body>
<div id="slider-box">
<span id="slider">></span>
<span id="slider-text">滑动解锁</span>
<span id="slider-bg"></span>
<span id="slider-Emerge"></span>
<span id="stop-go">∨</span>
</div>
</body>
<script type="text/javascript">
var sliderel={
$: function(selector){
return document.getElementById(selector)
},
getEvent:function(e){
var e=e || window.event
return e;
},
stopBubble:function(e){
var e =this.getEvent(e)
if(typeof e.preventDefault != "undefined"){
e.preventDefault();
}else{
e.returnValue = false;
}
}
},
Elemt={
flag:false,
nowMoseX: 0,
mx:sliderel.$("slider-box"),
sd:sliderel.$("slider"),
st:sliderel.$("slider-text"),
sb:sliderel.$("slider-bg"),
se:sliderel.$("slider-Emerge"),
sg:sliderel.$("stop-go"),
}
Elemt.sd.onmousedown=function(e){
var e =sliderel.getEvent(e)
sliderel.stopBubble(e);
Elemt.flag=true
nowMoseX=e.clientX-Elemt.sd.offsetLeft;
}
//滑块最大移动的距离
maxMove=Elemt.mx.offsetWidth -Elemt.sd.offsetWidth;
//鼠标移动的时候是否成功
Elemt.mx.onmousemove=function(e){
var e =sliderel.getEvent(e)
if(Elemt.flag){
var moveX=e.clientX-nowMoseX;
var oElemLeft=Elemt.sd.offsetLeft;//判断滑块移动的范围
if(oElemLeft<0){ //判断滑块是否超出限制位置
moveX=0;
Elemt.flag=false
}else if(oElemLeft>maxMove){
moveX=maxMove;
Elemt.sg.style.display="block";
Elemt.sd.style.display="none"
Elemt.sb.style.width=300+"px"
Elemt.st.innerHTML="滑动成功"
Elemt.st.style.color="#fff"
}
}
Elemt.sd.style.left=moveX+"px"
Elemt.sb.style.width=oElemLeft+20+"px";
}
//当鼠抬起判断是否滑动成功
Elemt.mx.onmouseup=function(e){
var e =sliderel.getEvent(e)
Elemt.flag=false
if(Elemt.sd.offsetLeft<maxMove){
speed=Math.ceil(Elemt.sd.offsetLeft/40);
time=setInterval(function(){
if(Elemt.sd.offsetLeft>=0){
Elemt.sd.style.left=Elemt.sd.offsetLeft-speed+"px";
Elemt.sb.style.width=Elemt.sb.offsetWidth-speed+"px";
}else{
clearInterval(time);
return false;
}
},10)
}
}
//当鼠离开是否滑动成功
Elemt.sd.onmouseout=function(e){
sliderel.stopBubble(e);
Elemt.flag=false;
if( Elemt.sd.offsetLeft<maxMove){
speed=Math.ceil(Elemt.sd.offsetLeft/40);
time=setInterval(function(){
if(Elemt.sd.offsetLeft>=0){
Elemt.sd.style.left=Elemt.sd.offsetLeft-speed+"px";
Elemt.sb.style.width=Elemt.sb.offsetWidth-speed+"px";
}else{
clearInterval(time);
return false;
}
},10);
}
}
</script>
</html>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
# js实现滑动解锁
# javascript
# 滑动
# 滑动事件
# jQuery使用unlock.js插件实现滑动解锁
# javascript实现滑动解锁功能
# js实现html滑动图片拼图验证
# JS实现滑动拼图验证功能完整示例
# js+canvas实现滑动拼图验证码功能
# 使用 Node.js 模拟滑动拼图验证码操作的示例代码
# JS实现PC手机端和嵌入式滑动拼图验证码三种效果
# javascript结合Flexbox简单实现滑动拼图游戏
# 原生js实现简单滑动解锁功能 js实现滑动拼图解锁
# 微软
# 滑块
# 鼠标
# 解锁
# 判断是否
# display
# eee
# line
# solid
# background
# ccc
# border
# radius
# position
# relative
# auto
# index
# left
# font
# green
相关文章:
建站168自助建站系统:快速模板定制与SEO优化指南
香港服务器建站指南:免备案优势与SEO优化技巧全解析
建站之星如何开启自定义404页面避免用户流失?
小型网站制作HTML,*游戏网站怎么搭建?
Thinkphp 中 distinct 的用法解析
如何在Golang中指定模块版本_使用go.mod控制版本号
C#怎么创建控制台应用 C# Console App项目创建方法
如何在阿里云香港服务器快速搭建网站?
建站之星在线客服如何快速接入解答?
如何注册花生壳免费域名并搭建个人网站?
武汉网站如何制作,黄黄高铁武穴北站途经哪些村庄?
昆明网站制作哪家好,昆明公租房申请网上登录入口?
如何选择网络建站服务器?高效建站必看指南
建站之星图片链接生成指南:自助建站与智能设计教程
C++中引用和指针有什么区别?(代码说明)
建站之星安装后如何配置SEO及设计样式?
企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?
已有域名能否直接搭建网站?
seo网站制作优化,网站SEO优化步骤有哪些?
如何用花生壳三步快速搭建专属网站?
视频网站制作教程,怎么样制作优酷网的小视频?
小捣蛋自助建站系统:数据分析与安全设置双核驱动网站优化
网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?
如何通过二级域名建站提升品牌影响力?
非常酷的网站设计制作软件,酷培ai教育官方网站?
高端建站三要素:定制模板、企业官网与响应式设计优化
建站VPS选购需注意哪些关键参数?
宠物网站制作html代码,有没有专门介绍宠物如何养的网站啊?
云南网站制作公司有哪些,云南最好的招聘网站是哪个?
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
如何基于PHP生成高效IDC网络公司建站源码?
简单实现Android文件上传
建站之星CMS五站合一模板配置与SEO优化指南
如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南
如何选择靠谱的建站公司加盟品牌?
如何自定义建站之星模板颜色并下载新样式?
婚礼视频制作网站,学习*后期制作的网站有哪些?
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
如何快速启动建站代理加盟业务?
c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】
小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?
如何通过云梦建站系统实现SEO快速优化?
网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?
建站之星安全性能如何?防护体系能否抵御黑客入侵?
如何选择服务器才能高效搭建专属网站?
如何挑选高效建站主机与优质域名?
手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?
子杰智能建站系统|零代码开发与AI生成SEO优化指南
建站主机数据库如何配置才能提升网站性能?
如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?
*请认真填写需求信息,我们会在24小时内与您取得联系。