写点js的小函数(二、文本框的提示)
写插件的博文实在是件伤神的事,太懒了,还是写点小函数吧。
在一些文本框上总是会看到一些提示,鼠标点上去之后就消失了,移开如果没有填内容的话还是会有提示出现。方法有很多,这里写一种。
/*
*文本框提示
* @id 文本框id
* @txt 提示内容
* IE678通过js控制,IE9/safari/firebox/opera/chrome通过html5控制
*/
function placeholder(id,txt){
var ie678 = !-[1,], //传说中用来判断ie678最短的字符串
obj = $('#'+id),
val = obj.val();
if(ie678 && (val=="" || val==txt)){
obj.val(txt).bind({
"focus":function(){
if(this.value==txt){
this.value = '';
}
},
"blur":function(){
if(this.value==''){
this.value=txt;
}
}
})
}else{
obj.attr("placeholder",txt);
}
}
*文本框提示
* @id 文本框id
* @txt 提示内容
* IE678通过js控制,IE9/safari/firebox/opera/chrome通过html5控制
*/
function placeholder(id,txt){
var ie678 = !-[1,], //传说中用来判断ie678最短的字符串
obj = $('#'+id),
val = obj.val();
if(ie678 && (val=="" || val==txt)){
obj.val(txt).bind({
"focus":function(){
if(this.value==txt){
this.value = '';
}
},
"blur":function(){
if(this.value==''){
this.value=txt;
}
}
})
}else{
obj.attr("placeholder",txt);
}
}
支持html5的浏览器相当方便,在html5里的input有个placeholder属性,她的作用就是我们所需要的,当然IE678我们只能自己写了。
PS:这里用的jquery,其他的可以自己转换。