HTML5对Web Form做了许多的增强,比如input新增的type类型、Form Validation等。其中Placeholder是HTML5新增的一个属性,当input或者textarea设置了该属性后,文本框内将把Placeholder的值作为提示的内容显示,当文本框获得焦点时与内容被改变时,提示的文字消失。在没有placeholder之前要实现这个效果都是用JavaScript来控制实现的, 目前firefox、google chrome等浏览器皆对其支持 , 唯独IE不支持
例如: <input id="t1" type="text" placeholder="请输入文字" />
但当上面的语句在IE中的时候,placeholder属性就没有任何做用,下面我们使用一个超强的让IE下支持placeholder的属性插件,同时也兼容其他不支持placeholder的浏览器,代码如下: <script language="javascript" type="text/javascript"> $(document).ready(function(){ var doc=document, inputs=doc.getElementsByTagName('input'), supportPlaceholder='placeholder'in doc.createElement('input'), placeholder=function(input){ var text=input.getAttribute('placeholder'), defaultValue=input.defaultValue; if(defaultValue==''){ input.value=text } input.onfocus=function(){ if(input.value===text) { this.value='' } }; input.onblur=function(){ if(input.value===''){ this.value=text } } }; if(!supportPlaceholder){ for(var i=0,len=inputs.length;i<len;i++){ var input=inputs[i], text=input.getAttribute('placeholder'); if(input.type==='text'&&text){ placeholder(input) } } } }); </script>
代码很简单,直接把代码复制下来,保存成一个js文件引用即可,不用再做任何处理,超级便利!
文章来源 CODETC,欢迎分享,转载请注明地址:
http://www.codetc.com/article-108-1.html
|