JavaScript如何把表單密碼的隱藏和顯示出來
為了網站的安全性,很多朋友都把密碼設的比較複雜,但是如何密碼不能明顯示,不知道輸的是對是錯,為了安全起見可以把密碼顯示的,那麼基於js程式碼如何實現的呢? 當用戶輸入時密碼顯示為圓點或者星號, 為了確保使用者輸入的正確, 使用者可以點選讓密碼顯示的按鈕. 直接就先看節目效果.
介面結構, 一個外層的pass-box, 然後內層加入input 和 一個 i 標籤, 且給他們加入相應的'class名稱.
現在我們給相應的class加入相應的屬性值. 在這個box裡, i 需要在input之上, 所以需要給 i 一個position屬性, 然後調整其top和right. 然後給其設定寬度和高度,設定其背景圖片.
-box {width: 300px;margin: 30px auto;position: relative;}-box input {border: #cccccc 1px solid;background-color: #fff;color: #666;padding: 10px;width: 100%;box-sizing: border-box;}-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 加入點選事件. 在HTML結構中, 我們給了 i 一個狀態, 這個作用主要是用於使用者兩次點選效果的判斷. 點選第一次, 密碼顯示; 點選第二次, 密碼隱藏. 重複這樣的動作. 所以利用這個state來檢視其狀態.
重點就在於, 修改input的type屬性, 顯示的時候type為 text, 隱藏的時候是 password. 所以JS的邏輯處理也是比較清晰.
var ele_pass_box = lementsByTagName("div")[0];var ele_pass = ele_pass_lementsByTagName("input")[0];var ele_eye = ele_pass_lementsByTagName("i")[0];ele_ick = function () {var state = ttribute("state");if(state === "off") {ele_ttribute("type", "text");ele_ttribute("state", "on");ele_ity = 0.2;} else {ele_ttribute("type", "password");ele_ttribute("state", "off");ele_ity = 1;}}
這就是邏輯程式碼, 程式碼量不多. 大家在測試的時候, 注意細節就好.
以上是小編給大家分享的基於JavaScript實現表單密碼的隱藏和顯示出來的全部內容,希望對大家有所幫助!
-
css經典教程
css經典教程1有些習慣顯得尤為重要,今天與您分享六個CSS習慣。因為習慣其實是會變的,所以只能寫“最近”的。這些習慣都跟技術無關,如果不遵守,也不會出錯。但是我覺得良好的習慣會體現一個人的素質。我們在中向大家介紹過很多CSS經驗與技巧,這些東西都發布在/css/...
-
如何理解Javascript的caller,callee,call,apply區別
在提到上述的概念之前,首先想說說javascript中函式的隱含引數:argumentsarguments該物件代表正在執行的函式和呼叫它的函式的引數。[function.]arguments[n]引數function:選項。當前正在執行的Function物件的名字。n:選項。要傳遞給Function物件的從0開始的引數值...
-
如何理解Javascript的caller,callee,call,apply區別
在提到上述的概念之前,首先想說說javascript中函式的隱含引數:argumentsarguments該物件代表正在執行的函式和呼叫它的函式的引數。[function.]arguments[n]引數function:選項。當前正在執行的Function物件的名字。n:選項。要傳遞給Function物件的從0開始的引數值...
-
JavaScript的課堂講解
本文主要內容:1.分析函式的四種呼叫形式2.弄清楚函式中this的意義3.明確構造函物件的過程4.學會使用上下文呼叫函式一、函式呼叫形式函式呼叫形式是最常見的形式,也是最好理解的形式。所謂函式形式就是一般宣告函式後直接呼叫即是。例如:複製程式碼程式碼如下://宣告...