JS实现placeholder效果

复制代码
<input type="text" class="login-input-1" id="usernamePlaceholder" value="用户名" onfocus="onfocusPlaceholderInput(this, 'username')" style="color: gray;"/> 
<input name="username" type="text" class="login-input-1" id="username" onblur="onblurRealValueInput(this, 'usernamePlaceholder')" style="display: none;"/> 
<input type="text" class="login-input-1" id="passwordPlaceholder" value="密码" onfocus="onfocusPlaceholderInput(this, 'password')" style="color: gray; "/> 
<input name="password" type="password" class="login-input-1" id="password" onblur="onblurRealValueInput(this, 'passwordPlaceholder')" style="display: none;"/> 

/** 
* 点击placeholder框之后,显示真正的输入框.例如点击密码框的placeholder之后显示密码输入框. 
* placeholderElement 被点击的元素 
* displayElementIdStr 准备显示的元素的id字符串 
*/ 
function onfocusPlaceholderInput(placeholderElement, displayElementIdStr) { 
placeholderElement.style.display = "none"; 
var v_displayElement = document.getElementById(displayElementIdStr); 
v_displayElement.style.display = "block"; 
v_displayElement.value = ""; 
v_displayElement.focus(); 
} 

/** 
* 
* 真正有效值的input框,失去焦点时判断是否显示placeholder 
* 当密码框失去焦点时,进行判断如果密码为空则显示密码placeholder框,否则显示密码框。 
* realValueElement 失去焦点的元素 
* placeholderIdStr 准备显示的placeholder的id字符串 
*/ 
function onblurRealValueInput(realValueElement, placeholderIdStr) { 
if ("" == realValueElement.value) { 
realValueElement.style.display = "none"; 
var v_placeholderElement = document.getElementById(placeholderIdStr); 
v_placeholderElement.style.display = "block"; 
} 
}
复制代码

 

posted @   letmedown  阅读(1222)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示