温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何让IE下支持Html5的placeholder属

发布时间:2022-03-01 13:59:43 来源:亿速云 阅读:160 作者:小新 栏目:web开发

这篇文章将为大家详细讲解有关如何让IE下支持Html5的placeholder属,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

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

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

例如: <input id="t1" type="text" placeholder="请输入文字" />

介绍一个超强的让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<len;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里面,从而发生错误.例如:

<input type="text" placeholder="输入商品编码" name="goodscode" id="goodscode" value="123" />

<input type="text" placeholder="输入商品名称" name="goodsname" id="goodsname" value="输入商品名称" />

关于“如何让IE下支持Html5的placeholder属”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI