IE下支持文本框和密码框placeholder效果的JQuery插件分享
来源:互联网 发布:开来软件 编辑:程序博客网 时间:2024/05/17 03:44
因为在ie8上不支持input的placeholder属性,查询了好久,发现了一款测试ok的插件拿来分享。
小弟已经上传资源供大家下载使用没有兑换积分
下载链接 http://download.csdn.net/detail/ooooooobh/9620520
原创文章如下(http://www.jb51.net/article/60599.htm)
很久之前写了这个插件,基于jQuery实现的,主要用于IE下实现placeholder效果,可同时支持文本和密码输入框。
placeholder是HTML5新增的一个属性,当input设置了该属性后,该值的内容将作为灰色提示显示在文本框中,当文本框获得焦点时,提示文字消失。
下载地址:http://xiazai.jb51.net/201501/other/placeholderfriend.rar
实现代码如下:
(function($) {
/**
* 没有开花的树
* 2012/11/28 15:12
*/
var placeholderfriend = {
focus: function(s) {
s = $(s).hide().prev().show().focus();
var idValue = s.attr("id");
if (idValue) {
s.attr("id", idValue.replace("placeholderfriend", ""));
}
var clsValue = s.attr("class");
if (clsValue) {
s.attr("class", clsValue.replace("placeholderfriend", ""));
}
}
}
//判断是否支持placeholder
function isPlaceholer() {
var input = document.createElement('input');
return "placeholder" in input;
}
//不支持的代码
if (!isPlaceholer()) {
$(function() {
var form = $(this);
//遍历所有文本框,添加placeholder模拟事件
var elements = form.find("input[type='text'][placeholder]");
elements.each(function() {
var s = $(this);
var pValue = s.attr("placeholder");
var sValue = s.val();
if (pValue) {
if (sValue == '') {
s.val(pValue);
}
}
});
elements.focus(function() {
var s = $(this);
var pValue = s.attr("placeholder");
var sValue = s.val();
if (sValue && pValue) {
if (sValue == pValue) {
s.val('');
}
}
});
elements.blur(function() {
var s = $(this);
var pValue = s.attr("placeholder");
var sValue = s.val();
if (!sValue) {
s.val(pValue);
}
});
//遍历所有密码框,添加placeholder模拟事件
var elementsPass = form.find("input[type='password'][placeholder]");
elementsPass.each(function(i) {
var s = $(this);
var pValue = s.attr("placeholder");
var sValue = s.val();
if (pValue) {
if (sValue == '') {
//DOM不支持type的修改,需要复制密码框属性,生成新的DOM
var html = this.outerHTML || "";
html = html.replace(/\s*type=(['"])?password\1/gi, " type=text placeholderfriend")
.replace(/\s*(?:value|on[a-z]+|name)(=(['"])?\S*\1)?/gi, " ")
.replace(/\s*placeholderfriend/, " placeholderfriend value='" + pValue
+ "' " + "onfocus='placeholderfriendfocus(this);' ");
var idValue = s.attr("id");
if (idValue) {
s.attr("id", idValue + "placeholderfriend");
}
var clsValue = s.attr("class");
if (clsValue) {
s.attr("class", clsValue + "placeholderfriend");
}
s.hide();
s.after(html);
}
}
});
elementsPass.blur(function() {
var s = $(this);
var sValue = s.val();
if (sValue == '') {
var idValue = s.attr("id");
if (idValue) {
s.attr("id", idValue + "placeholderfriend");
}
var clsValue = s.attr("class");
if (clsValue) {
s.attr("class", clsValue + "placeholderfriend");
}
s.hide().next().show();
}
});
});
}
window.placeholderfriendfocus = placeholderfriend.focus;
})(jQuery);
使用很简单
<html>
<head>
<script src="jquery.js" type="text/javascript"></script>
<script src="placeholderfriend.js" type="text/javascript"></script>
</head>
<body>
<input placeholder="账号/手机号码" ><br>
<input placeholder="密码" type="password" >
</body>
</html>
//注意以下插件可以自行下载。
<script src="jquery.js" type="text/javascript"></script>
0 0
- IE下支持文本框和密码框placeholder效果的JQuery插件分享
- IE下实现placeholder效果,支持文本框和密码框
- IE下实现placeholder效果的jquery插件
- 兼容其他不支持placeholder的浏览器(超强的让IE下支持placeholder的属性插件)
- 文本框 placeholder 兼容IE7 IE 8不能显示的效果
- 通过jQuery在IE中支持placeholder
- jQuery实现IE浏览器兼容placeholder效果
- ie placeholder 不能用 写个jquery placeholder 插件 解决
- placeholder—Jquery插件placeholder的使用方法
- 关于jquery插件placeholder 1.3在chrome和safari下点击后不消失的解决方法
- 基于jQuery的placeholder插件
- 【jQuery】使得IE的输入框完成placeholder的使命
- placeholder支持ie
- placeholder支持ie
- 用jQuery解决input中placeholder值在ie中无法支持的问题
- jQuery解决input中placeholder值在ie中无法支持的问题
- 使用jQuery快速解决input中placeholder值在ie中无法支持的问题
- IE input X 去掉文本框的叉叉和密码输入框的眼睛图标
- I restart to learn Android
- 如何发送HTTP请求之一:使用HttpURLConnection(入门篇)
- ISBN号码
- 颠覆你思维的静态加载顺序
- (超详细)Oracle 10g RAC 添加节点实验操作总结
- IE下支持文本框和密码框placeholder效果的JQuery插件分享
- Error mounting /dev/sda1 at /media/XXXX: Command-line `mount -t "ntfs" -o
- iOS swift3.0 抽屉式侧滑布局的实现
- SGU 390 Tickets(数位dp,较难)
- Python的build-in函数super()
- 我们应该如何去了解JavaScript引擎的工作原理
- (超详细)Oracle 10g RAC 删除节点实验操作总结
- socketpair
- oracle insert select from 导致ORA-04030