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.學會使用上下文調用函數一、函數調用形式函數調用形式是最常見的形式,也是最好理解的形式。所謂函數形式就是一般聲明函數後直接調用即是。例如:複製代碼代碼如下://聲明...