js實現輸入密碼之延遲星號和點擊按鈕顯示或隱藏


緣由

手機打開segmentfalut時,長時間不登陸了,提示要重新登陸,輸入的過程中看到輸入密碼時,延遲后再變成密文,很好奇,所以搗鼓了一下。本文實現了兩種密碼展示

代碼實現

1 先明后密

js實現輸入密碼后,先顯示當前輸入的一位密碼,然后再變成星號

<input id="ipt" type="text" /><br>
let val;
var str = ""; // 中間層
let ipt = document.getElementById('ipt');
ipt.addEventListener('keyup', function () {
  val = this.value;
  if (val.length >= str.length) {
    str += val; // 存取
  } else {
    str = str.substr(0, val.length)
  }
  this.value = val.replace(/./g, "*")
}, false)

2 按鈕顯示隱藏密碼

這個方法是通過一個按鈕去顯示和隱藏輸入后的密碼

<input id="pwd" type="password" /> <button>顯示密碼</button>
let pwd = document.getElementById('pwd')
    let btn = document.querySelector('button')
    let flag = true; // 狀態控制
    btn.onclick = function(){
      if(flag){
        btn.innerHTML = '隱藏密碼'
        pwd.type = 'text'
        flag = false
      }else{
        btn.innerHTML = '顯示密碼'
        pwd.type = 'password'
        flag = true
      }
    }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM