通过js实现得到焦点时文本框清空,失去焦点时又显示默认文字,值发生改变时不再恢复默认文字?

2024-11-03 07:06:05
推荐回答(4个)
回答1:


function isSupportPlaceHolder () {
var test = document.createElement('input');
return ('placeholder' in test);
}
if(!isSupportPlaceHolder()) {
var input = document.getElementsByTagName('input')[0];
input.onfocus = function () {
if(this.value == this.getAttribute('placeholder')) {
this.value = '';
}
};
input.onblur = function () {
if(!this.value) {
this.value = this.getAttribute('placeholder');
}
input.blur();
};
}


html5中提供了placeholder属性来做这个事情,所以我们可以先考虑使用浏览器提供的方法。

如果不支持这个属性,那么用js来实现。

回答2:

自己将上面的代码复制到html文件中.试试.不符合要求的话,自己稍微调整一下.

回答3:

可以使用文本框的onfocus和onblur事件来实现,当文本框失去焦点时,判断是否为空,为空则为默认文字

回答4: