国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

js登錄滑動驗證的實現(xiàn)

來源:懂視網(wǎng) 責編:小OO 時間:2020-11-27 20:07:33
文檔

js登錄滑動驗證的實現(xiàn)

js的判斷這里是根據(jù)滑塊的位置進行判斷,應該是用一個flag判斷。<;%@ page language=";java";contentType=";text/html;charset=utf-8";pageEncoding=";utf-8";%>;<;%@ taglib prefix=";c";uri=";http://java.sun.com/jsp/jstl/core";%>;<;% String basePath = request.getContextPath();%>;<。[endif]-->;<;script>;if (window.top
推薦度:
導讀js的判斷這里是根據(jù)滑塊的位置進行判斷,應該是用一個flag判斷。<;%@ page language=";java";contentType=";text/html;charset=utf-8";pageEncoding=";utf-8";%>;<;%@ taglib prefix=";c";uri=";http://java.sun.com/jsp/jstl/core";%>;<;% String basePath = request.getContextPath();%>;<。[endif]-->;<;script>;if (window.top

本文主要為大家分享一篇js登錄滑動驗證的實現(xiàn)(不滑動無法登陸),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧,希望能幫助到大家。

js的判斷這里是根據(jù)滑塊的位置進行判斷,應該是用一個flag判斷

<%@ page language="java" contentType="text/html; charset=utf-8"
 pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%
 String basePath = request.getContextPath();
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>登錄</title>
<link href="<%=basePath%>/res/css/bootstrap.min14ed.css?v=3.3.6" rel="external nofollow" 
 rel="stylesheet">
<link href="<%=basePath%>/res/css/font-awesome.min93e3.css?v=4.4.0" rel="external nofollow" 
 rel="stylesheet">
<link href="<%=basePath%>/res/css/animate.min.css" rel="external nofollow" rel="stylesheet">
<link href="<%=basePath%>/res/css/style.min862f.css?v=4.1.0" rel="external nofollow" 
 rel="stylesheet">
<!--[if lt IE 9]>
 <meta http-equiv="refresh" content="0;ie.html" />
 <![endif]-->
<script>
 if (window.top !== window.self) {
 window.top.location = window.location;
 }
</script>
<style>
* {
 margin: 0;
 padding: 0;
}
body {
 font: 12px/1.125 Microsoft YaHei;
 background: #fff;
}
ul, li {
 list-style: none;
}
a {
 text-decoration: none;
}
.ani {
 transition: all .3s;
}
.wrap {
 width: 300px;
 height:;
 text-align: center;
 margin: 150px auto;
}
.inner {
 padding: 15px;
}
.clearfix {
 overflow: hidden;
 _zoom: 1;
}
.none {
 display: none;
}
#slider {
 position: relative;
 background-color: #e8e8e8;
 width: 300px;
 height: 34px;
 line-height: 34px;
 text-align: center;
}
#slider .handler {
 position: absolute;
 top: 0px;
 left: 0px;
 width: 40px;
 height: 32px;
 border: 1px solid #ccc;
 cursor: move;
}
.handler_bg {
 background: #fff
 url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NTc3MiwgMjAxNC8wMS8xMy0xOTo0NDowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo0ZDhlNWY5My05NmI0LTRlNWQtOGFjYi03ZTY4OGYyMTU2ZTYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NTEyNTVEMURGMkVFMTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NTEyNTVEMUNGMkVFMTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo2MTc5NzNmZS02OTQxLTQyOTYtYTIwNi02NDI2YTNkOWU5YmUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NGQ4ZTVmOTMtOTZiNC00ZTVkLThhY2ItN2U2ODhmMjE1NmU2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+YiRG4AAAALFJREFUeNpi/P//PwMlgImBQkA9A+bOnfsIiBOxKcInh+yCaCDuByoswaIOpxwjciACFegBqZ1AvBSIS5OTk/8TkmNEjwWgQiUgtQuIjwAxUF3yX3xyGIEIFLwHpKyAWB+I1xGSwxULIGf9A7mQkBwTlhBXAFLHgPgqEAcTkmNCU6AL9d8WII4HOvk3ITkWJAXWUMlOoGQHmsE45ViQ2KuBuASoYC4Wf+OUYxz6mQkgwAAN9mIrUReCXgAAAABJRU5ErkJggg==")
 no-repeat center;
}
.handler_ok_bg {
 background: #fff
 url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NTc3MiwgMjAxNC8wMS8xMy0xOTo0NDowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo0ZDhlNWY5My05NmI0LTRlNWQtOGFjYi03ZTY4OGYyMTU2ZTYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDlBRDI3NjVGMkQ2MTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDlBRDI3NjRGMkQ2MTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDphNWEzMWNhMC1hYmViLTQxNWEtYTEwZS04Y2U5NzRlN2Q4YTEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NGQ4ZTVmOTMtOTZiNC00ZTVkLThhY2ItN2U2ODhmMjE1NmU2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+k+sHwwAAASZJREFUeNpi/P//PwMyKD8uZw+kUoDYEYgloMIvgHg/EM/ptHx0EFk9I8wAoEZ+IDUPiIMY8IN1QJwENOgj3ACo5gNAbMBAHLgAxA4gQ5igAnNJ0MwAVTsX7IKyY7L2UNuJAf+AmAmJ78AEDTBiwGYg5gbifCSxFCZoaBMCy4A4GOjnH0D6DpK4IxNSVIHAfSDOAeLraJrjgJp/AwPbHMhejiQnwYRmUzNQ4VQgDQqXK0ia/0I17wJiPmQNTNBEAgMlQIWiQA2vgWw7QppBekGxsAjIiEUSBNnsBDWEAY9mEFgMMgBk00E0iZtA7AHEctDQ58MRuA6wlLgGFMoMpIG1QFeGwAIxGZo8GUhIysmwQGSAZgwHaEZhICIzOaBkJkqyM0CAAQDGx279Jf50AAAAAABJRU5ErkJggg==")
 no-repeat center;
}
#slider .drag_bg {
 background-color: #7ac23c;
 height: 34px;
 width: 0px;
}
#slider .drag_text {
 position: absolute;
 top: 0px;
 width: 300px;
 -moz-user-select: none;
 -webkit-user-select: none;
 user-select: none;
 -o-user-select: none;
 -ms-user-select: none;
}
.unselect {
 -moz-user-select: none;
 -webkit-user-select: none;
 -ms-user-select: none;
}
.slide_ok {
 color: #fff;
}
</style>
</head>
<style>
.btn-primary {
 background-color: #0000FF;
}
.btn-primary:hover {
 background-color: #0000FF;
}
.btn-primary {
 background-color: #0000FF;
 border-color: #0000FF;
}
</style>
<body class="gray-bg">
 <p class="middle-box text-center loginscreen animated fadeInDown">
 <p>
 <h3 style="margin-top: 100px;">歡迎登錄</h3>
 <form class="m-t" role="form" action="<%=basePath%>/login"
 method="POST" onsubmit="return login();">
 <p class="form-group">
 <input name="username" id="username" type="text"
 class="form-control" placeholder="用戶名" required="">
 </p>
 <p class="form-group">
 <input type="password" name="password" id="password"
 class="form-control" placeholder="密碼" required="">
 </p>
 
 <p class="wrap" style="margin: 10px auto 10px">
 <p id="slider">
 <p class="drag_bg"></p>
 <p class="drag_text" onselectstart="return false;"
 unselectable="on">拖動滑塊驗證</p>
 <p class="handler handler_bg"></p>
 </p>
 </p>
 <input type="hidden" name="${_csrf.parameterName}"
 value="${_csrf.token}">
 <button type="submit" style="background-color: #0000FF;" class="btn btn-primary block full-width m-b">登
 錄</button>
 <%
 if (request.getParameter("error") != null) {
 %>
 <span id="" style="color: red;">賬號或者密碼錯誤!</span>
 <%
 }
 %>
 <%
 if (request.getParameter("logout") != null) {
 %>
 <span>已經(jīng)安全退出!</span>
 <%
 }
 %>
 <p class="text-muted text-center">
 <a href="login.html#" rel="external nofollow" ><small>忘記密碼了?</small></a> | <a
 href="<%=basePath%>/register" rel="external nofollow" >注冊一個新賬號</a>
 </p>
 </form>
 </p>
 </p>
 <script src="<%=basePath%>/res/js/jquery.min.js?v=2.1.4"></script>
 <script src="<%=basePath%>/res/js/bootstrap.min.js?v=3.3.6"></script>
</body>
<script type="text/javascript"
 src="<%=basePath%>/res/js/jquery-1.12.4.min.js"></script>
<script type="text/javascript" src="<%=basePath%>/res/js/jquery.md5.js"></script>
<script type="text/javascript">
 $(function() {
 $('#username').val();
 });
 function login() {
 if($(".drag_bg").width()<260){
 return false;
 }
 var password = $('#password').val();
 password = $.md5(password);
 console.log(password);
 $('#password').val(password);
 return true;
 }
</script>
<script>
 (function(window, document, undefined) {
 var dog = {//聲明一個命名空間,或者稱為對象
 $ : function(id) {
 return document.querySelector(id);
 },
 on : function(el, type, handler) {
 el.addEventListener(type, handler, false);
 },
 off : function(el, type, handler) {
 el.removeEventListener(type, handler, false);
 }
 };
 //封裝一個滑塊類
 function Slider() {
 var args = arguments[0];
 for ( var i in args) {
 this[i] = args[i]; //一種快捷的初始化配置
 }
 //直接進行函數(shù)初始化,表示生成實例對象就會執(zhí)行初始化
 this.init();
}
Slider.prototype = {
 constructor : Slider,
 init : function() {
 this.getDom();
 this.dragBar(this.handler);
 },
 getDom : function() {
 this.slider = dog.$('#' + this.id);
 this.handler = dog.$('.handler');
 this.bg = dog.$('.drag_bg');
 },
 dragBar : function(handler) {
 var that = this, startX = 0, lastX = 0, doc = document, width = this.slider.offsetWidth, max = width
 - handler.offsetWidth, drag = {
 down : function(e) {
 var e = e || window.event;
 that.slider.classList.add('unselect');
 startX = e.clientX - handler.offsetLeft;
 console.log('startX: ' + startX + ' px');
 dog.on(doc, 'mousemove', drag.move);
 dog.on(doc, 'mouseup', drag.up);
 return false;
 },
 move : function(e) {
 var e = e || window.event;
 lastX = e.clientX - startX;
 lastX = Math.max(0, Math.min(max, lastX)); //這一步表示距離大于0小于max,巧妙寫法
 console.log('lastX: ' + lastX + ' px');
 if (lastX >= max) {
 handler.classList.add('handler_ok_bg');
 that.slider.classList.add('slide_ok');
 dog.off(handler, 'mousedown', drag.down);
 drag.up();
 }
 that.bg.style.width = lastX + 'px';
 handler.style.left = lastX + 'px';
 },
 up : function(e) {
 var e = e || window.event;
 that.slider.classList.remove('unselect');
 if (lastX < width) {
 that.bg.classList.add('ani');
 handler.classList.add('ani');
 that.bg.style.width = 0;
 handler.style.left = 0;
 setTimeout(function() {
 that.bg.classList.remove('ani');
 handler.classList.remove('ani');
 }, 300);
 }
 dog.off(doc, 'mousemove', drag.move);
 dog.off(doc, 'mouseup', drag.up);
 }
 };
 dog.on(handler, 'mousedown', drag.down);
 }
 };
 window.S = window.Slider = Slider;
 })(window, document);
 var defaults = {
 id : 'slider'
 };
 new S(defaults);
</script>
</html>

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

js登錄滑動驗證的實現(xiàn)

js的判斷這里是根據(jù)滑塊的位置進行判斷,應該是用一個flag判斷。<;%@ page language=";java";contentType=";text/html;charset=utf-8";pageEncoding=";utf-8";%>;<;%@ taglib prefix=";c";uri=";http://java.sun.com/jsp/jstl/core";%>;<;% String basePath = request.getContextPath();%>;<。[endif]-->;<;script>;if (window.top
推薦度:
標簽: 登錄 js 滑塊
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 日韩系列第一页 | 久久一级毛片 | 久久久久久久国产精品 | 免费啪啪网 | 国内精品91久久久久 | 日本高清在线播放一区二区三区 | 国产成人h福利小视频在线观看 | 日本色图在线观看 | 午夜看一级特黄a大片黑 | 全免费毛片在线播放 | 亚洲国产第一页 | 日本一区不卡 | 亚洲第8页 | 欧美嫩交 | 国产一区二三区 | 精品国产一区二区三区在线 | 二区久久国产乱子伦免费精品 | 伊人精品国产 | 国产日本在线视频 | 中文字幕在线视频精品 | 日本三级全黄三级a | 国产成人亚洲综合一区 | 国产不卡在线观看 | 日韩欧美网站 | 欧美色图日韩色图 | 亚洲国产欧美另类 | 国产真实乱人偷精品 | 日韩在线视频播放 | 国产欧美一区二区三区视频 | 亚洲精品免费观看 | 欧美一区二区二区 | 国产一区二区免费视频 | 欧美日韩精品一区二区 | 亚洲欧洲免费视频 | 久久久久国产精品 | 国产欧美综合精品一区二区 | 国内精品伊人久久久久 | 91精品国产色综合久久不卡蜜 | 精品久久综合一区二区 | 亚洲欧美日本另类 | 日本欧美一区二区三区不卡视频 |