最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

文本框和密码框实现灰色预提示文字

来源:动视网 责编:小采 时间:2020-11-27 19:51:48
文档

文本框和密码框实现灰色预提示文字

文本框和密码框实现灰色预提示文字:这次给大家带来文本框和密码框实现灰色预提示文字,文本框和密码框实现灰色预提示文字的注意事项有哪些,下面就是实战案例,一起来看一下。很久之前写了这个插件,基于jQuery实现的,主要用于IE下实现placeholder效果,可同时支持文本和密码输入框。plac
推荐度:
导读文本框和密码框实现灰色预提示文字:这次给大家带来文本框和密码框实现灰色预提示文字,文本框和密码框实现灰色预提示文字的注意事项有哪些,下面就是实战案例,一起来看一下。很久之前写了这个插件,基于jQuery实现的,主要用于IE下实现placeholder效果,可同时支持文本和密码输入框。plac


这次给大家带来文本框和密码框实现灰色预提示文字,文本框和密码框实现灰色预提示文字的注意事项有哪些,下面就是实战案例,一起来看一下。

很久之前写了这个插件,基于jQuery实现的,主要用于IE下实现placeholder效果,可同时支持文本和密码输入框。

placeholder是HTML5新增的一个属性,当input设置了该属性后,该值的内容将作为灰色提示显示在文本框中,当文本框获得焦点时,提示文字消失。

实现代码如下:

(function($) {
 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>

相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!

推荐阅读:

jQuery Mobile初始化事件使用(案例详解)

设置多行文本框[textarea]自动生成高度

文档

文本框和密码框实现灰色预提示文字

文本框和密码框实现灰色预提示文字:这次给大家带来文本框和密码框实现灰色预提示文字,文本框和密码框实现灰色预提示文字的注意事项有哪些,下面就是实战案例,一起来看一下。很久之前写了这个插件,基于jQuery实现的,主要用于IE下实现placeholder效果,可同时支持文本和密码输入框。plac
推荐度:
标签: 密码 文字 文本框
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top