让IE下支持Html5的placeholder属性的插件
来源: 阅读:664 次 日期:2014-11-20 10:55:56
温馨提示: 小编为您整理了“让IE下支持Html5的placeholder属性的插件”,方便广大网友查阅!

HTML5对Web Form做了许多增强,比如input新增的type类型、Form Validation等。

Placeholder是HTML5新增的另一个属性,当input或者textarea设置了该属性后,该值的内容将作为灰字提示显示在文本框中,当文本框获得焦点时,提示文字消失。以前要实现这效果都是用JavaScript来控制才能实现 , firefox、google chrome等表示对其支持 , 唯独IE存在违和感啊!

例如:

介绍一个超强的让IE下支持placeholder的属性插件,同时也兼容其他不支持placeholder的浏览器,代码如下:

代码如下:

$(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

var input=inputs[i],

text=input.getAttribute('placeholder');

if(input.type==='text'&&text){

placeholder(input)

}

}

}

});

直接把代码复制下来,保存成一个js文件引用即可,不用再做任何处理,超级便利!

ex : 这样做的确能让IE的Input显示placeholder属性,但是如果页面上只有一个input还好,如果是多个input,如果出现input没有填入任何值的话,那么它的空input会自动将placeholder的值填进value里面,从而发生错误.例如:

代码如下:

解决办法就是在后台自己判断啦 , 也许能在上面的js文件里解决 , 以后再研究啦~!

更多信息请查看IT技术专栏

更多信息请查看 网页制作
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们| 联系我们| 人才招聘| 网站声明| 网站帮助| 非正式的简要咨询| 简要咨询须知| 加入群交流| 手机站点| 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00) 版权所有:
云南网警报警专用图标
Baidu
map