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

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題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關(guān)鍵字專題關(guān)鍵字專題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
當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

在js中如何實(shí)現(xiàn)登錄需要滑動(dòng)驗(yàn)證

來源:懂視網(wǎng) 責(zé)編:小OO 時(shí)間:2020-11-27 19:37:18
文檔

在js中如何實(shí)現(xiàn)登錄需要滑動(dòng)驗(yàn)證

js的判斷這里是根據(jù)滑塊的位置進(jìn)行判斷,應(yīng)該是用一個(gè)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
推薦度:
導(dǎo)讀js的判斷這里是根據(jù)滑塊的位置進(jìn)行判斷,應(yīng)該是用一個(gè)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登錄滑動(dòng)驗(yàn)證的實(shí)現(xiàn)(不滑動(dòng)無法登陸),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。

js的判斷這里是根據(jù)滑塊的位置進(jìn)行判斷,應(yīng)該是用一個(gè)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">拖動(dòng)滑塊驗(yàn)證</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;">賬號(hào)或者密碼錯(cuò)誤!</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" >注冊(cè)一個(gè)新賬號(hào)</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 = {//聲明一個(gè)命名空間,或者稱為對(duì)象
 $ : 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);
 }
 };
 //封裝一個(gè)滑塊類
 function Slider() {
 var args = arguments[0];
 for ( var i in args) {
 this[i] = args[i]; //一種快捷的初始化配置
 }
 //直接進(jìn)行函數(shù)初始化,表示生成實(shí)例對(duì)象就會(huì)執(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>

上面是我整理給大家的,希望今后會(huì)對(duì)大家有幫助。

相關(guān)文章:

在Vue中設(shè)置背景圖片

使用vue + less如何實(shí)現(xiàn)簡(jiǎn)單換膚功能

使用angular、react和vue如何實(shí)現(xiàn)相同的面試題組件

利用jQuery實(shí)現(xiàn)滾動(dòng)到底部時(shí)自動(dòng)加載

在Angular2.0中如何實(shí)現(xiàn)modal對(duì)話框

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

文檔

在js中如何實(shí)現(xiàn)登錄需要滑動(dòng)驗(yàn)證

js的判斷這里是根據(jù)滑塊的位置進(jìn)行判斷,應(yīng)該是用一個(gè)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
推薦度:
標(biāo)簽: 登錄 驗(yàn)證 里面
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 日本六十路丰满老太交尾 | 国产免费一区二区三区 | 亚洲最新视频在线观看 | 日韩在线亚洲 | 亚洲图片国产日韩欧美 | 亚洲精品在线免费观看视频 | 亚洲欧美国产日本 | 在线免费视频国产 | 日韩在线网 | 久久国内精品 | 国内精品一区二区2021在线 | 激情一区二区三区成人 | 亚洲国产综合久久精品 | 欧美极品第一页 | 一道精品一区二区三区 | 日韩在线二区 | 亚洲va欧美 | 久久久久无码国产精品一区 | 亚洲国产精品一区二区九九 | 极品美女国产精品免费一区 | 精品国产日韩亚洲一区二区 | 国产在线每日更新 | 国产成人高清亚洲一区91 | 免费国产va在线观看视频 | 久草伦理| 日韩成人在线免费视频 | 国产人成久久久精品 | 亚洲另类欧美日韩 | 国产传媒一区二区三区四区五区 | 日本三级电影网址 | 国产精品久久一区一区 | 国产精品黄大片观看 | 欧美激情 在线 | 91久久综合九色综合欧美98 | 黄色免费一级视频 | 一区二区三区免费在线 | 欧美精品首页 | 国产日本在线视频 | 久久精品一区二区三区不卡牛牛 | 欧美日韩国产精品va | 欧美亚洲综合图区在线 |