我想在 JavaScript 中切换密码可见性。但我希望它以这样的方式出现:当用户单击眼睛图标一次时,密码可见性会闪烁并恢复为不可见(即以点表示法)。当尝试在 Windows 10 中查看 wi-fi 密码时,会实现此机制。我想在 javascript 中使用相同的技术,但我已经被困在这个问题上一段时间了。 免责声明:我现在正在学习 JavaScript 中的事件类型,请提供适合初学者的解决方案。 提前致谢。
HTML 代码
<input type="password">
<i class="far fa-eye"></i>
JavaScript 代码
let inputObj = document.querySelector("input");
let iObj = document.querySelector("i");
iObj.addEventListener("click",function(){
inputObj.type = (inputObj.type==="password") ? "text" : "password";
iObj.classList.toggle("fa-eye-slash");
})
最佳答案
您可以尝试使用setTimeout()
函数。
使用方法如下:
setTimeout(回调,超时毫秒)
它看起来是这样的:
iObj.addEventListener("click",function(){
inputObj.type = "text";
iObj.classList.toggle("fa-eye-slash");
setTimeout(() =>
inputObj.type = "password";
iObj.classList.toggle("fa-eye-slash");
// Let's say timeout for 2 seconds
}, 2000)
})
关于JavaScript : Display password for a short time,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66392714/