Layui组件 sliderVerify 实现滑块验证

一、使用截图

Layui组件 sliderVerify 实现滑块验证Layui组件 sliderVerify 实现滑块验证

二、快速上手

1、文件引入

  • 获得 layui 后,将其完整地部署到你的项目目录(或静态资源服务器),你只需要引入下述一个文件:
./sliderVerify/sliderVerify.js

2、入门案例

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<meta name="renderer" content="webkit">
	  	<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
	  	<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
		<link rel="stylesheet" href="layui/css/layui.css" />
		</head>
		<body>
			<form class="layui-form" action="">
				<div class="layui-form-item">
					<label class="layui-form-label">输入框</label>
					<div class="layui-input-block">
						<input type="text" name="title" required lay-verify="required" placeholder="请输入标题" autocomplete="off" class="layui-input">
					</div>
				</div>
				<div class="layui-form-item">
					<label class="layui-form-label">滑动验证</label>
					<div class="layui-input-block">
						<div id="slider"></div>
					</div>
				</div>
				<div class="layui-form-item">
					<div class="layui-input-block">
						<button class="layui-btn" lay-submit lay-filter="formDemo">立即提交</button>
						<button type="reset" class="layui-btn layui-btn-primary">重置</button>
					</div>
				</div>
			</form>
<script src="../layui/layui.js"></script>
<script>
		//一般直接写在一个js文件中
		layui.config({
			base: 'dist/sliderVerify/'
		}).use(['sliderVerify', 'jquery', 'form'], function() {
			var sliderVerify = layui.sliderVerify,
				form = layui.form;
			var slider = sliderVerify.render({
				elem: '#slider',
				onOk: function(){//当验证通过回调
					layer.msg("滑块验证通过");
				}
			})
			//监听提交
			form.on('submit(formDemo)', function(data) {
				if(slider.isOk()){//用于表单验证是否已经滑动成功
					layer.msg(JSON.stringify(data.field));
				}else{
					layer.msg("请先通过滑块验证");
				}
				return false;
			});
			
		})
</script> 
</body>
</html>

3、自定义风格样式

	var slider = sliderVerify.render({
		elem: '#slider',
		isAutoVerify:false,//关闭自动验证
		bg : 'layui-bg-red',//自定义背景样式名
		text : '滑动',
		onOk: function(){//当验证通过回调
			layer.msg("滑块验证通过");
		}
	})

4、滑块重置

  • slider.reset(); 支持写在 回调函数onOk
slider.reset();

三、实际应用(比如登录)

下面写的有点繁琐了,但大概就是这么个意思,实际情况中请尽可能测试各种可能出现的情况 >_<

  • 1、在滑块验证通过函数 onOk 中使用 Ajax 调用后台接口,把登录的用户名作为 keyredis30s 过期。如果用户名为空就点击了滑块验证,则接口报错,滑块重置 slider.reset()
  • 2、用户点击登录的时候,用 slider.isOk()校验是否滑块验证了,没验证就提示需要滑块验证,验证了就请求登录接口判断用户账号密码,如果错误,则滑块重置slider.reset()
  • 3、如果成功,则校验滑块redis是否存在:如果存在,则删除该缓存登录成功,如果不存在说明该用户缓存不存在或者已过期,页面显示返回的错误,滑块重置slider.reset(),重新拖动滑块校验,登录成功

四、参考地址

上一篇:有关于LayUI的镜像网站


下一篇:

相关文章