欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JS模仿手機(jī)端九宮格登錄功能實(shí)現(xiàn)代碼

 更新時(shí)間:2016年04月28日 11:31:08   作者:熊灬孩灬子  
這篇文章主要介紹了JS模仿手機(jī)端九宮格登錄功能實(shí)現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下

最近沒(méi)有項(xiàng)目做,閑來(lái)無(wú)事寫了一個(gè)小demo,特此分享到腳本之家平臺(tái),供大家參考下,本文寫的不好還請(qǐng)各位大俠見(jiàn)諒!

 功能及方法邏輯都注釋在代碼中。所以麻煩大家直接看代碼。

 效果如下:

 話不多說(shuō)直接上代碼:

 js部分:

 首先我們先畫(huà)出兩個(gè)九宮格,一個(gè)用于登錄和首次設(shè)置滑動(dòng)密碼使用,另個(gè)用于再次設(shè)置滑動(dòng)密碼,用于與第一次輸入的滑動(dòng)密碼進(jìn)行對(duì)比,判斷兩次密碼是否一致

 第一個(gè)九宮格

$("#gesturepwd").GesturePasswd({
backgroundColor: "#252736", //背景色
color: "#FFFFFF", //主要的控件顏色
roundRadii: 25, //大圓點(diǎn)的半徑
pointRadii: 6, //大圓點(diǎn)被選中時(shí)顯示的圓心的半徑
space: 30, //大圓點(diǎn)之間的間隙
width: 240, //整個(gè)組件的寬度
height: 240, //整個(gè)組件的高度
lineColor: "#00aec7", //用戶劃出線條的顏色
zindex: 100 //整個(gè)組件的css z-index屬性
}); 

在用同樣的方式畫(huà)出第二個(gè)九宮格

///加載第二個(gè)
function getur() {
$("#gesturepsa").GesturePasswd({
backgroundColor: "#252736", //背景色
color: "#FFFFFF", //主要的控件顏色
roundRadii: 25, //大圓點(diǎn)的半徑
pointRadii: 6, //大圓點(diǎn)被選中時(shí)顯示的圓心的半徑
space: 30, //大圓點(diǎn)之間的間隙
width: 240, //整個(gè)組件的寬度
height: 240, //整個(gè)組件的高度
lineColor: "#00aec7", //用戶劃出線條的顏色
zindex: 100 //整個(gè)組件的css z-index屬性
});
} 

html部分:

<div>
<center><br><br>
<div id="gesturepwd"></div> 
<div id="gesturepsa" style="display:none"></div>
</center>
</div> 

用戶登錄時(shí)通過(guò)業(yè)務(wù)邏輯層查詢數(shù)據(jù)庫(kù),看客戶是否設(shè)置九宮格密碼,如果設(shè)置則調(diào)用add()方法,未設(shè)置則調(diào)用upup()方法。

<script>
$(function () {
var urlinfo = window.location.href;
var UserName = urlinfo.split("_")[1]; 
$.ajax({
type: "POST",
url: "../../Home/Details",
dataType: 'json',
anyc: false,
data: { UserName: UserName },
success: function (data) {
if (data.msg == "True") {
$("#pass").text(data.pass);
alert("請(qǐng)輸入手勢(shì)密碼!")
add();
}
else {
alert("請(qǐng)?jiān)O(shè)置手勢(shì)密碼!")
upup();
}
}
})
})
</script> 

當(dāng)用戶已經(jīng)設(shè)置過(guò)時(shí)我們進(jìn)行如下操作(調(diào)用add()方法):

///設(shè)置過(guò)手勢(shì)密碼的用戶
function add() {
$("#gesturepwd").on("hasPasswd", function (e, passwd) {
var result;
if (passwd == $("#pass").text()) {
result = true;
}
else {
result = false;
}
if (result == true) {
$("#gesturepwd").trigger("passwdRight");
setTimeout(function () {
//密碼驗(yàn)證正確后的其他操作,打開(kāi)新的頁(yè)面等。。。
//alert("密碼正確!")
$("#gesturepwd").hide();
$("#Indexs").show();;
}, 500); //延遲半秒以照顧視覺(jué)效果
}
else {
$("#gesturepwd").trigger("passwdWrong");
//密碼驗(yàn)證錯(cuò)誤后的其他操作。。。
}
});
} 

這里我們可以獲取客戶在九宮格滑動(dòng)的密碼,將之取出來(lái)(即 passwd),我們將之與隱藏元素pass中的密碼對(duì)比,如果一樣這進(jìn)入下一步,即登錄成功。因?yàn)槭莇ome所有密碼我直接放在頁(yè)面的元素中,在實(shí)際開(kāi)發(fā)中不建議這樣,最好在后臺(tái)進(jìn)行對(duì)比,如果要這樣請(qǐng)加密之后操作。如果用戶為第一次設(shè)置的話,我們調(diào)用upup方法

///沒(méi)有設(shè)置過(guò)手勢(shì)密碼用戶
function upup() {
///第一次設(shè)置
$("#gesturepwd").on("hasPasswd", function (e, passwd) {
$("#pass").text(passwd)
alert("請(qǐng)?jiān)俅屋斎?");
getur();
$("#gesturepwd").hide();
$("#gesturepsa").show();
});
///第二次設(shè)置
Recursive();
}

這里我們獲取到用戶第一次滑動(dòng)設(shè)置的密碼將之賦給pass元素中。

然后調(diào)用Recursive方法

///遞歸(循環(huán)調(diào)用自己)
function Recursive() {
$("#gesturepsa").on("hasPasswd", function (e, passwd) {
var urlinfo = window.location.href;
var UserName = urlinfo.split("_")[1];
if (passwd == $("#pass").text()) {
$.ajax({
type: "POST",
url: "../../Home/GrtturePassword",
dataType: 'json',
anyc: false,
data: { GesturePassword: passwd, UserName: UserName },
success: function (data) {
alert(data);
$("#gesturepsa").hide();;
$("#Indexs").show();;
}
})
}
else {
$("#gesturepsa").trigger("passwdWrong");
alert("兩次密碼不一致,請(qǐng)重新輸入!");
$("#gesturepsa").remove();
$("#gesturepwd").after("<div id='gesturepsa'></div>")
getur();
Recursive();
}
});
} 

  我們將第二次設(shè)置的密碼與第一次對(duì)比,如果一樣我們就通過(guò)ajax將密碼傳到后臺(tái),進(jìn)行密碼保存操作。如果兩次輸入不一樣我們就通過(guò)遞歸在將自己在調(diào)用一次進(jìn)行對(duì)比,直至通過(guò),當(dāng)然你也可以設(shè)置3次不同重新設(shè)置什么的。

  由于功能很簡(jiǎn)單就不進(jìn)行詳解,如果有不明白或者要參考源碼的請(qǐng)留言,我會(huì)編寫一個(gè)dome與大家分享。

相關(guān)文章

  • 使用微信小程序開(kāi)發(fā)前端【快速入門】

    使用微信小程序開(kāi)發(fā)前端【快速入門】

    本文從代碼角度和宏觀角度簡(jiǎn)單闡述了微信小程序在前端領(lǐng)域的一些內(nèi)容和影響,希望能夠幫助那些不了解微信小程序的開(kāi)發(fā)者很快入門并認(rèn)識(shí)這一新的技術(shù)領(lǐng)域。
    2016-12-12
  • 使用Bootstrap框架制作查詢頁(yè)面的界面實(shí)例代碼

    使用Bootstrap框架制作查詢頁(yè)面的界面實(shí)例代碼

    這篇文章主要介紹了使用Bootstrap框架制作查詢頁(yè)面界面的效果,本文以職業(yè)技能考證分?jǐn)?shù)查詢界面為例,通過(guò)實(shí)例代碼給大家詳細(xì)介紹,需要的朋友可以參考下
    2016-05-05
  • JS實(shí)現(xiàn)下拉菜單列表與登錄注冊(cè)彈窗效果

    JS實(shí)現(xiàn)下拉菜單列表與登錄注冊(cè)彈窗效果

    下面小編就為大家?guī)?lái)一篇JS實(shí)現(xiàn)下拉菜單列表與登錄注冊(cè)彈窗效果。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-08-08
  • Vue項(xiàng)目中關(guān)于全局css的處理

    Vue項(xiàng)目中關(guān)于全局css的處理

    我們?cè)趯慍SS的時(shí)候,會(huì)遇到大量相同的屬性(比如:margin-top:10px)這種屬性幾乎每個(gè)vue頁(yè)面都有。這個(gè)時(shí)候,我們可以把css掛載到全局上,供所有vue頁(yè)面使用,同時(shí)也方便修改。感興趣的同學(xué)可以參考一下
    2023-04-04
  • 基于jQuery的模仿新浪微博時(shí)間的組件

    基于jQuery的模仿新浪微博時(shí)間的組件

    廢話不多說(shuō),實(shí)現(xiàn)原理主要是處理table,生成tr td,其中最重要的是如何找出每月第一天是星期幾,然后就能對(duì)應(yīng)出這個(gè)月的余下天數(shù).
    2011-10-10
  • 教你30秒發(fā)布一個(gè)TypeScript包到NPM的方法步驟

    教你30秒發(fā)布一個(gè)TypeScript包到NPM的方法步驟

    這篇文章主要介紹了教你30秒發(fā)布一個(gè)TypeScript包到NPM的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • js 獲取屏幕各種寬高的方法(瀏覽器兼容)

    js 獲取屏幕各種寬高的方法(瀏覽器兼容)

    js 獲取屏幕各種寬高的方法(瀏覽器兼容),需要的朋友可以參考一下
    2013-05-05
  • JavaScript defineProperty如何實(shí)現(xiàn)屬性劫持

    JavaScript defineProperty如何實(shí)現(xiàn)屬性劫持

    雙向數(shù)據(jù)綁定的核心方法,主要是做數(shù)據(jù)劫持操作(監(jiān)控?cái)?shù)據(jù)變化),下面這篇文章主要給大家介紹了關(guān)于JavaScript defineProperty如何實(shí)現(xiàn)屬性劫持的相關(guān)資料,需要的朋友可以參考下
    2021-07-07
  • GOJS+VUE實(shí)現(xiàn)流程圖效果

    GOJS+VUE實(shí)現(xiàn)流程圖效果

    這篇文章主要為大家詳細(xì)介紹了GOJS+VUE實(shí)現(xiàn)流程圖效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • 使用Javascript實(shí)現(xiàn)復(fù)制粘貼功能的示例代碼

    使用Javascript實(shí)現(xiàn)復(fù)制粘貼功能的示例代碼

    本篇文章記錄如何通過(guò)js代碼實(shí)現(xiàn)復(fù)制內(nèi)容到剪切板,之后可以粘貼到需要的地方的功能,文中通過(guò)代碼示例介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2023-09-09

最新評(píng)論