让IE下支持Html5的placeholder属性的插件


Posted in HTML / CSS onSeptember 02, 2014

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="输入商品名称" />

解决办法就是在后台自己判断啦 , 也许能在上面的js文件里解决 , 以后再研究啦~!
HTML / CSS 相关文章推荐
CSS3 @media的基本用法总结
Sep 10 HTML / CSS
HTML5+CSS3实现无插件拖拽上传图片(支持预览与批量)
Jan 05 HTML / CSS
canvas实现俄罗斯方块的方法示例
Dec 13 HTML / CSS
html5中监听canvas内部元素点击事件的三种方法
Apr 28 HTML / CSS
HTML5 对各个标签的定义与规定:body的介绍
Jun 21 HTML / CSS
HTML5 Canvas之测试浏览器是否支持Canvas的方法
Jan 01 HTML / CSS
一些常用的HTML5模式(pattern) 总结
Jul 14 HTML / CSS
html5 canvas合成海报所遇问题及解决方案总结
Aug 03 HTML / CSS
HTML5 Canvas 实现圆形进度条并显示数字百分比效果示例
Aug 18 HTML / CSS
AmazeUI框架搭建的方法步骤(图文)
Aug 17 HTML / CSS
css3属性选择器 “~”(波浪号) “,”(逗号) “+”(加号)和 “>”(大于号)
Apr 19 HTML / CSS
css弧边选项卡的项目实践
May 07 HTML / CSS
html5摇一摇代码优化包括DeviceMotionEvent等等
Sep 01 #HTML / CSS
Html5 FileReader实现即时上传图片功能实例代码
Sep 01 #HTML / CSS
html5定位获取当前位置并在百度地图上显示
Aug 22 #HTML / CSS
HTML5 transform三维立方体实现360无死角三维旋转效果
Aug 22 #HTML / CSS
html5 更新图片颜色示例代码
Jul 29 #HTML / CSS
Html5 语法与规则简要概述
Jul 29 #HTML / CSS
html5桌面通知(Web Notifications)实例解析
Jul 07 #HTML / CSS
You might like
PHP base64编码后解码乱码的解决办法
2014/06/19 PHP
YII路径的用法总结
2014/07/09 PHP
php5.4传引用时报错问题分析
2016/01/22 PHP
一个简单安全的PHP验证码类、PHP验证码
2016/09/24 PHP
硬盘浏览程序,保存成网页格式便可使用
2006/12/03 Javascript
javascript动画对象支持加速、减速、缓入、缓出的实现代码
2012/09/30 Javascript
js优化针对IE6.0起作用(详细整理)
2012/12/25 Javascript
javaScript让文本框内的最后一个文字的后面获得焦点实现代码
2013/01/06 Javascript
侧栏跟随滚动的简单实现代码
2013/03/18 Javascript
JS去除字符串两端空格的简单实例
2013/12/27 Javascript
js用Date对象的setDate()函数对日期进行加减操作
2014/09/18 Javascript
jQuery事件绑定on()与弹窗实现代码
2016/04/28 Javascript
js时间比较 js计算时间差的简单实现方法
2016/08/26 Javascript
jQuery点击导航栏选中更换样式的实现代码
2017/01/23 Javascript
Vue2.x中的Render函数详解
2017/05/30 Javascript
vue.js绑定事件监听器示例【基于v-on事件绑定】
2018/07/07 Javascript
vue设置导航栏、侧边栏为公共页面的例子
2019/11/01 Javascript
JavaScript实现Tab标签页切换的最简便方式(4种)
2020/06/28 Javascript
[01:01:22]VGJ.S vs OG 2018国际邀请赛淘汰赛BO3 第一场 8.22
2018/08/23 DOTA
[30:55]完美世界DOTA2联赛PWL S2 Magma vs LBZS 第二场 11.18
2020/11/18 DOTA
python正则表达式抓取成语网站
2013/11/20 Python
Python连接SQLServer2000的方法详解
2017/04/19 Python
python实现批量修改文件名代码
2017/09/10 Python
神经网络python源码分享
2017/12/15 Python
python 移动图片到另外一个文件夹的实例
2019/01/10 Python
Python是什么 Python的用处
2020/05/26 Python
Python docutils文档编译过程方法解析
2020/06/23 Python
全球知名的婚恋交友网站:Match.com
2017/01/05 全球购物
Ever New美国:澳大利亚领先的女装时尚品牌
2019/11/28 全球购物
Can a struct inherit from another struct? (结构体能继承结构体吗)
2016/09/25 面试题
工程专业求职自荐书范文
2014/02/18 职场文书
安全生产网格化管理实施方案
2014/03/01 职场文书
安全技术说明书
2014/05/09 职场文书
2015年社区工会工作总结
2015/05/26 职场文书
学前班教学反思
2016/02/24 职场文书
详解Golang如何实现支持随机删除元素的堆
2022/09/23 Python