支付宝的滑块验证效果,又刷新了大家对于验证码的认知,这种滑块效果,改善了用户体验。除了它外观和用户体验上的优秀外,其实它的安全性也并未降低,后端对用户行为的分析依然保证了安全校验。

下面我们在此介绍一下,滑块效果的前端实现。

涵盖的内容主要: 滑块前端样式(html排版),滑块的闪光移动效果(CSS3 动画),以及滑块滑动脚本的编写(javascript 移动,点击,拖拽事件的编写。)

备注: 本实例基于网上Demo 增添 CSS效果 和 修复 JS BUG 等问题。大家直接粘贴代码到对应的文件,便可直接运行。

运行结果

首先给出几张效果图。

滑块前端HTML

滑动

.slidetounlock{

font-size: 12px;

background:-webkit-gradient(linear,left top,right top,color-stop(0,#4d4d4d),color-stop(.4,#4d4d4d),color-stop(.5,#fff),color-stop(.6,#4d4d4d),color-stop(1,#4d4d4d));

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

-webkit-animation:slidetounlock 3s infinite;

-webkit-text-size-adjust:none

}

@-webkit-keyframes slidetounlock{0%{background-position:-200px 0} 100%{background-position:200px 0}}

请按住滑块,拖动到最右边

$('#drag').drag();

HTML 滑块CSS 样式

#drag{

position: relative;

background-color: #e8e8e8;

width: 300px;

height: 34px;

line-height: 34px;

text-align: center;

}

#drag .handler{

position: absolute;

top: 0px;

left: 0px;

width: 40px;

height: 32px;

border: 1px solid #ccc;

cursor: move;

}

.handler_bg{

background: #fff url("../img/slider.png") no-repeat center;

}

.handler_ok_bg{

background: #fff url("../img/complet.png") no-repeat center;

}

#drag .drag_bg{

background-color: #7ac23c;

height: 34px;

width: 0px;

}

#drag .drag_text{

position: absolute;

top: 0px;

width: 300px;

color:#9c9c9c;

-moz-user-select: none;

-webkit-user-select: none;

user-select: none;

-o-user-select:none;

-ms-user-select:none;

font-size: 12px; // add

}

滑块拖拽JS

/**

* Created by shuai_wy on 2017/3/14.

*/

$.fn.drag = function(options) {

var x, drag = this, isMove = false, defaults = {

};

var options = $.extend(defaults, options);

var handler = drag.find('.handler');

var drag_bg = drag.find('.drag_bg');

var text = drag.find('.drag_text');

var maxWidth = drag.width() - handler.width(); //能滑动的最大间距

//鼠标按下时候的x轴的位置

handler.mousedown(function(e) {

isMove = true;

x = e.pageX - parseInt(handler.css('left'), 10);

});

//鼠标指针在上下文移动时,移动距离大于0小于最大间距,滑块x轴位置等于鼠标移动距离

$(document).mousemove(function(e) {

var _x = e.pageX - x;// _x = e.pageX - (e.pageX - parseInt(handler.css('left'), 10)) = x

if (isMove) {

if (_x > 0 && _x <= maxWidth) {

handler.css({'left': _x});

drag_bg.css({'width': _x});

} else if (_x > maxWidth) { //鼠标指针移动距离达到最大时清空事件

dragOk();

}

}

}).mouseup(function(e) {

isMove = false;

var _x = e.pageX - x;

if (_x < maxWidth) { //鼠标松开时,如果没有达到最大距离位置,滑块就返回初始位置

handler.css({'left': 0});

drag_bg.css({'width': 0});

}

});

//清空事件

function dragOk() {

handler.removeClass('handler_bg').addClass('handler_ok_bg');

text.removeClass('slidetounlock').text('验证通过').css({'color':'#fff'}); //modify

// drag.css({'color': '#fff !important'});

handler.css({'left': maxWidth}); // add

drag_bg.css({'width': maxWidth}); // add

handler.unbind('mousedown');

$(document).unbind('mousemove');

$(document).unbind('mouseup');

}

};

仿支付宝滑块效果下载链接

Demo下载链接

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

php滑动解锁验证码,javascript实现支付宝滑块验证码效果相关推荐

  1. JavaScript实现拖动滑块验证

    Write By Monkeyfly 以下内容均为原创,如需转载请注明出处. 前提 之前在优化别人写的登录界面时,遇到了滑动解锁成功后发送短信验证码的场景,因为涉及到改动,所以必须要明白它是怎么实现的 ...

  2. 【愚公系列】2022年12月 .NET CORE工具案例-滑块验证码和拼图验证功能实现

    文章目录 前言 1.滑块验证码的定义 2.滑块验证码的安全性分析 3.滑块验证码的第三方服务 一.滑动验证码和拼图验证功能实现 1.逻辑分析 2.新建项目 3.配置缓存 4.配置跨域 5.后端源码 6 ...

  3. android自定义滑块解锁,android 滑动解锁

    通过android自定义View实现横向的滑动解锁,1.滑动到中间会自动返回到原始的位置,2.滑动到底部会自动解锁,会触发解锁的回调:首先看效果图如下: 实现以上部分一共分为三部分: 其中背景通过sh ...

  4. android自定义滑块解锁,使用Android自定义控件实现滑动解锁九宫格

    本文概述: 滑动解锁九宫格的分析: 1.需要自定义控件: 2.需要重写事件onTouchEvent(); 3.需要给九个点设置序号和坐标,这里用Map类就行: 4.需要判断是否到滑到过九点之一,并存储 ...

  5. 【5分钟教你】3种实现验证码功能-数字短信验证码-图形验证码-滑动验证码

    摘要:我们在做一些后台系统的登录验证的时候.难免会用到验证码功能,来辅助进行验证,提高安全性,在我们日常生活中,验证方式无处不在,最多的是短信验证码的方式,通过点击发送验证码,然后手机接收短信,填写验 ...

  6. angularjs 滑块验证码 移动端_SliderCaptcha

    滑块式验证码 用户通过拖动滑块行为来完成校验,支持PC端及移动端.可以将用户拖动行为的时间.精度,滑动轨迹等信息到服务器,然后进行后台算法验证. 特别介绍 Blazor 版本的滑块验证码 传送门 在线 ...

  7. 滑块验证码识别 java版本

    https://blog.csdn.net/qq_19383667/article/details/77879895 好久没有更新技术文章了,很久之前研究过滑块验证码的破解,照着别人的代码改,将其他版 ...

  8. selenium破解滑块验证码自动查询+获取后续表单数据

    一.装载好chromedriver之后,运行命令行 "chrome.exe"(路径) --remote-debugging-port=9222 打开谷歌浏览器. 二.使用selen ...

  9. 滑块验证码识别 java版本

    好久没有更新技术文章了,很久之前研究过滑块验证码的破解,照着别人的代码改,将其他版本的代码改成java的,加上自己的一些研究,凑合凑合出了第一个java版本的,此版本不是控制浏览器进行验证,纯java ...

  10. JavaScript实现拖动滑块验证(方法已封装)

    前提 之前写了一篇博文,题目是<JavaScript实现拖动滑块验证>,里面都是用最简单的方式实现的.后来,群里大神推荐了一款unlock.js插件,称作幻灯片解锁插件.在这里附上它的gi ...

最新文章

  1. 互联网大脑,城市大脑的“大脑”究竟什么含义?
  2. 买衣服送粉丝,人气美女出新招
  3. Have a tea -(极客大挑战(SMC,fork
  4. Opencv模块功能介绍
  5. 计算广告 pdf_他创业20年死磕PDF一项业务,如今上市身家76亿:所有的突然牛逼,背后都是玩命死磕...
  6. oracle resetlog与noresetlog的作用(转载)
  7. FastDFS搭建文件服务器
  8. 在没有原始数据的情况下, 我把列线图转换成了网页计算器
  9. 近200篇机器学习深度学习资料分享(含各种文档,视频,源码等)
  10. java实现 库鲁斯卡尔算法 kruskal(算法设计与分析作业)
  11. 惯性测量单元预积分原理与实现
  12. PHP家长互助的好处,家长互助会的三大促进
  13. 【无标题】旧金山大学算法可视化网站
  14. html编写在线打字通,前端关键字(打字练习)共1347个字符
  15. linux软件包下载解压安装
  16. 前端利器,6 款开源 Web 性能优化辅助工具推荐
  17. 基于知识的推荐-基于约束、效用和实例的算法
  18. 淘宝/天猫/淘特/京东/拼多多/唯品会/苏宁易购/考拉海购内部隐藏优惠券。饿了么/美团外卖/美团优选/美团酒店/大众点评/口碑红包。抖音/快手直播带货。优惠券APP源码怎么写?分享给大家。
  19. darknet-19与darknet53
  20. ubuntu系统使用命令行将文件拷贝到u盘里

热门文章

  1. apk倒入android studio,反编译apk导入android studio
  2. ubuntu用virtualbox安装windows
  3. Cadence每日一学_01| Cadence、Allegro、OrCAD都是什么东东?
  4. 大学生计算机知识竞赛,大学生计算机基础知识竞赛题库(试题附答案).docx
  5. 三星 android驱动安装失败,三星USB手机驱动安装失败怎么办?三星USB手机驱动安装失败解决方法...
  6. Stereo Matching文献笔记之(九):经典算法Semi-Global Matching(SGM)之神奇的HMI代价计算~
  7. 用友2003年度NC_SCM项目经理/高级顾问认证考试试题及答案
  8. 使用Android Studio开发/调试Android源码
  9. 2021,属于Golang和Gopher的全新纪元
  10. Git问题解决方案:Pulling without specifying how to reconcile divergent branches