原生js实现向右滑动验证

代码:
html

 <body onload="yzm()">
    <div class="box">
        <!--按钮-->
        <div class="btn">></div>
        <!--文字-->
        <p class="text">请向右滑动滑块</p>
        <!--背景-->
        <div class="bg"></div>
    </div>
</body>

js

function yzm() {
        var box=document.querySelector('.box');//盒子
        var text=document.querySelector('.text');//文字
        var btn=document.querySelector('.btn');//按钮
        var bg=document.querySelector('.bg');//背景层
        var flag=false;//验证标识
        //鼠标按下
        btn.onmousedown=function (e) {
            var downX=e.clientX;//鼠标按下时与x轴的的距离
            //鼠标移动
            btn.onmousemove=function (e) {
                var moveX=e.clientX-downX;//鼠标移动的距离
                if(moveX>0){
                    btn.style.left=moveX+'px';
                    bg.style.width=moveX+'px';
                    if(moveX>=box.offsetWidth-btn.offsetWidth){
                        flag=true;//验证成功
                        text.innerHTML='验证通过';
                        text.style.color='#ffffff';
                        //清除事件
                        btn.onmousemove=null;
                        btn.onmousedown=null;
                    }
                }
            }
        };
        //鼠标松开
        btn.onmouseup=function () {
            //清除事件
            btn.onmousemove=null;
            if(flag) return;
            btn.style.left=0;
            bg.style.width=0;
        }
    }

效果图:
图1
图2

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值