ie8不兼容input的placeholder属性但是要实现其效果的方法

通过学习前辈的思想,个人想法整理如下:
- 通过两个元素标签,仿造出placeholder的内容
- 使用position定位好两个元素标签
- 第一要隐藏两个元素标签display:none,在<!--[if gte IE 8]><![endif]-->中设置style样式为display:inline-block
- 使用js控制效果,通过给页面绑定点击事件并且利用target对象做判断,控制两个元素标签的显藏:
- 点击的对象是元素标签,当前点击对象隐藏,判断另外的输入框值是否为空,是否隐藏显示第二个元素标签
- 点击的对象时输入框,当前输入框的元素标签隐藏,判断另外的输入框值是否为空,是否隐藏显示第二个元素标签
- 点击是其他对象,判断所有输入框的值是否为空,是否显示或隐藏两个元素标签
HTML代码如下:
<div>
<div class="Account_img">
<div class="ion-person-stalker"></div>
</div>
<input id="Account" name="Account" type="text" value="" placeholder="Username账户" class="valid">
<span class="show_placeholder" id="span1">Username账户</span>
</div>
<div>
<div class="password_img">
<div class="fa fa-key"></div>
</div>
<input data-val="true" data-val-required="请填写用户密码" id="Password" name="Password" type="password" placeholder="Password密码">
<span class="show_placeholder" id="span2">Password密码</span>
</div>
CSS代码略
JS代码如下:
<!--[]>
<script type="text/javascript">
$(document).click(function (e) {
var e = e || window.event;
var target = e.srcElement || e.target;
if (target.id == 'span1') {
controll_input1();
$('#Account').focus();
} else if(target.id == 'span2'){
controll_input2();
$('#Password').focus();
}else if(target.id=="Account"){
controll_input1();
}else if(target.id=="Password"){
controll_input2();
}else{
if ($('#Account').val() == "") {
$('#span1').show();
}
if ($('#Password').val() == "") {
$('#span2').show();
}
}
});
function controll_input1(){
$('#span1').hide();
if ($('#Password').val() == "") {
$('#span2').show();
}
}
function controll_input2(){
$('#span2').hide();
if ($('#Account').val() == "") {
$('#span1').show();
}
}
</script>
<style>
.show_placeholder {
display: inline-block;
}
</style>
<![endif]-->
ie8不兼容input的placeholder属性但是要实现其效果的方法的更多相关文章
- 解决input标签placeholder属性浏览器兼容性问题的一种方法
为文本框input添加文字输入提示,H5为input提供了一个placeholder属性.在支持H5的浏览器中,用此属性设置输入提示,简单方便,但是对于IE8以下版本,都不支持placeholder属 ...
- Hmtl5 <input>中placeholder属性(新属性)
Hmtl5 <input>中placeholder属性(新属性) 一.定义和用法 placeholder 属性提供可描述输入字段预期值的提示信息(hint). 该提示会在输入字段为空时显示 ...
- 兼容IE8以下浏览器input表单属性placeholder不能智能提示功能
当前很多表单提示使用了表单属性placeholder,可这属性不兼容IE8以下的浏览器,我自己写了一个兼容处理js // 兼容IE8以下浏览器input不能智能提示功能 if(navigator.ap ...
- input 的 placeholder属性在IE8下的兼容处理
placeholder是input标签的新属性,在使用的时候有两个问题: 1.IE8 下不兼容 处理思路: 如果浏览器不识别placeholder属性,给input添加类名placeholder,模仿 ...
- [干货]兼容HTML5的Placeholder属性-更新版v0.10102013
HTML5对Web Form做了许多增强,比如input新增的type类型.Form Validation等.Placeholder是HTML5新增的另一个属性,当input或者textarea设置了 ...
- 修改 input / textarea placeholder 属性的颜色和字体大小
话不多说,直接上代码: input::-webkit-input-placeholder, textarea::-webkit-input-placeholder { color: #666; fon ...
- 前端 html input标签 placeholder属性 标签上显示内容
前端 html input标签 的placeholder属性 标签上显示内容 <!DOCTYPE html> <html lang="en"> < ...
- ie8下修改input的type属性报错
摘要: 现在有一个需求如图所示,当用户勾选显示明文复选框时,要以明文显示用户输入的密码,去掉勾选时要变回密文,刚开始想到的就是修改输入框的type来决定显示明文还是密文,使用jQuery的attr来做 ...
- IE678910不兼容H5的placeholder属性,需要JS解决
两种方法的思路 一.使用input的value作为显示文本 二.不使用value,添加一个额外的span标签,绝对定位覆盖到input上面. 两种方式各有优缺点,方法一占用了input的value属性 ...
随机推荐
- linux命令之uname
uname是linux中查询系统基本信息的命令. 命令形式: uname [选项] 选项包括:(若不跟任何选项:则默认-s选项) -s, --kernel-name 输出内核名称 -n, --no ...
- OpenSuSE zypper repo及Desktop媒体播放器设置 for OpenSuSE12.
1.禁用官方源和DVD光盘源,启用中国大陆源 使用DVD光盘安装好openSUSE 12.2之后,软件安装源中默认存在一个名称为”openSUSE-12.2-1.6″的软件源,这个源的URL实际上是指 ...
- OpenStack ceilometer部署安装监控,计费数据抓取测试Ok
- SQL自动创建表和自动插入字段实例
USE [UMoney] GO /****** Object: StoredProcedure [dbo].[WCL_WorkerStatDailyWrite] Script Date: 10/08/ ...
- Wheel ProgressBar 实现之三——模拟进度过程
1. 效果展示: 知道如何画圆弧,如何精确画出进度文本之后,我们将进入 Wheel ProgressBar 实现的最后一个过程:模拟其动态呈现过程.如下图所示,初始时显示进度为 0 (上图),点击进度 ...
- 移动端WEB开发 代码片段
WebApp是指基于Web的系统和应用,其作用是向广大的最终用户发布一组复杂的内容和功能(不明白说的是什么).其实Web APP就是一个针对Iphone.Android等智能手机优化后的web站点,它 ...
- zepto.js 处理Touch事件(实例)
处理Touch事件能让你了解到用户的每一根手指的位置,在touch事件触发的时候产生,可以通过touch event handler的event对象取到,如果基于zepto.js开发,一般是通过eve ...
- SQL server 数据库基本知识
SQL server 数据库基本知识 一.数据库: 分为层次型.网状型.关系型.现在通常都是使用关系型 常用的有:SQLserver.Oracle.DB2.Access.Visual Foxpro.M ...
- html form表单提交数据并后台获取
前台: HTML的代码:(关键是要在form里设置enctype="multipart/form-data",这样才能在提交表单时,将文件以二进制流的形式传输到服务器) <h ...
- BZOJ 3503: [Cqoi2014]和谐矩阵( 高斯消元 )
偶数个相邻, 以n*m个点为变量, 建立异或方程组然后高斯消元... O((n*m)^3)复杂度看起来好像有点大...但是压一下位的话就是O((n*m)^3 / 64), 常数小, 实际也跑得很快. ...