写点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);
    }
}

支持html5的浏览器相当方便,在html5里的input有个placeholder属性,她的作用就是我们所需要的,当然IE678我们只能自己写了。

PS:这里用的jquery,其他的可以自己转换。

posted on 2011-06-02 14:12  Lecaf  阅读(584)  评论(0编辑  收藏  举报