基于JavaScript實(shí)現(xiàn)表單密碼的隱藏和顯示出來
來源:易賢網(wǎng) 閱讀:781 次 日期:2016-08-03 15:55:59
溫馨提示:易賢網(wǎng)小編為您整理了“基于JavaScript實(shí)現(xiàn)表單密碼的隱藏和顯示出來”,方便廣大網(wǎng)友查閱!

為了網(wǎng)站的安全性,很多朋友都把密碼設(shè)的比較復(fù)雜,但是如何密碼不能明顯示,不知道輸?shù)氖菍κ清e(cuò),為了安全起見可以把密碼顯示的,那么基于js代碼如何實(shí)現(xiàn)的呢? 當(dāng)用戶輸入時(shí)密碼顯示為圓點(diǎn)或者星號, 為了確保用戶輸入的正確, 用戶可以點(diǎn)擊讓密碼顯示的按鈕. 直接就先看節(jié)目效果.

界面結(jié)構(gòu), 一個(gè)外層的pass-box, 然后內(nèi)層加入input 和 一個(gè) i 標(biāo)簽, 且給他們加入相應(yīng)的class名稱.

<div class="pass-box">

<input type="password" name="pass" />

<i state="off"></i>

</div>

現(xiàn)在我們給相應(yīng)的class加入相應(yīng)的屬性值. 在這個(gè)box里, i 需要在input之上, 所以需要給 i 一個(gè)position屬性, 然后調(diào)整其top和right. 然后給其設(shè)置寬度和高度,設(shè)置其背景圖片.

.pass-box {

width: 300px;

margin: 30px auto;

position: relative;

}

.pass-box input {

border: #cccccc 1px solid;

background-color: #fff;

color: #666;

padding: 10px;

width: 100%;

box-sizing: border-box;

}

.pass-box i{

display: inline-block;

width: 30px;

height: 30px;

position: absolute;

right: 5px;

top:5px;

background-image: none;

background-size: 200% 200%;

background-position: center;

}

這樣界面效果完成. 然后給 i 加入點(diǎn)擊事件. 在HTML結(jié)構(gòu)中, 我們給了 i 一個(gè)狀態(tài), 這個(gè)作用主要是用于用戶兩次點(diǎn)擊效果的判斷. 點(diǎn)擊第一次, 密碼顯示; 點(diǎn)擊第二次, 密碼隱藏. 重復(fù)這樣的動作. 所以利用這個(gè)state來查看其狀態(tài).

重點(diǎn)就在于, 修改input的type屬性, 顯示的時(shí)候type為 text, 隱藏的時(shí)候是 password. 所以JS的邏輯處理也是比較清晰.

var ele_pass_box = document.getElementsByTagName("div")[0];

var ele_pass = ele_pass_box.getElementsByTagName("input")[0];

var ele_eye = ele_pass_box.getElementsByTagName("i")[0];

ele_eye.onclick = function () {

var state = this.getAttribute("state");

if(state === "off") {

ele_pass.setAttribute("type", "text");

ele_eye.setAttribute("state", "on");

ele_eye.style.opacity = 0.2;

} else {

ele_pass.setAttribute("type", "password");

ele_eye.setAttribute("state", "off");

ele_eye.style.opacity = 1;

}

}

這就是邏輯代碼, 代碼量不多. 大家在測試的時(shí)候, 注意細(xì)節(jié)就好.

以上是小編給大家分享的基于JavaScript實(shí)現(xiàn)表單密碼的隱藏和顯示出來的全部內(nèi)容,希望對大家有所幫助!

更多信息請查看網(wǎng)絡(luò)編程
易賢網(wǎng)手機(jī)網(wǎng)站地址:基于JavaScript實(shí)現(xiàn)表單密碼的隱藏和顯示出來
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65317125(9:00—18:00) 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)