JS实现输入框提示文字点击时消失效果
【介绍JS魔法】输入框提示文字点击即消失,事件监听机制巧妙实现
你是否曾在登录框中看到过这样一个效果:输入框中的提示文字,在你点击时会瞬间消失,而在失去焦点时又会出现?今天,就让我们一起揭开这个神秘效果的神秘面纱,看看如何用JS实现它。
一、效果简述
在网页的登录框中,我们经常能看到输入框里有淡色的提示文字,比如“请输入您的ID”。当你点击输入框时,这些文字会消失,而在你移开焦点(如点击其他地方)时,它们又会重新出现。这种效果无疑提升了用户体验。
二、JS实现原理
这个效果主要依赖于JavaScript对鼠标事件的响应以及事件监听机制。通过监听输入框的点击和失去焦点事件,我们可以控制提示文字的显示与隐藏。
三、代码
下面是一段实现这个效果的JS代码:
```javascript
function addListener(element,e,fn){
if(element.addEventListener){
element.addEventListener(e,fn,false);
} else {
element.attachEvent("on" + e,fn);
}
}
var myinput = document.getElementById("myinput");
addListener(myinput,"click",function(){
myinput.value = ""; // 点击输入框时,清空提示文字
})
addListener(myinput,"blur",function(){
myinput.value = "请输入您的ID"; // 失去焦点时,恢复提示文字
})
```
在这段代码中,我们首先定义了一个`addListener`函数,用于给元素添加事件监听。然后,我们获取了ID为"myinput"的输入框元素,并为其添加了点击和失去焦点事件监听。在点击事件中,我们将输入框的值设为空字符串,从而清空提示文字。在失去焦点事件中,我们恢复输入框的值为提示文字。
四、HTML结构
配合上述JS代码,你需要在HTML中创建一个登录框输入框,并为其设置ID:
```html