JQuery实现密码有短暂的显示过程和实现 input hint效果

JQuery实现密码有短暂的显示过程和实现 input hint效果

实现目的

这几天做项目的时候,客户要求在文本框输入密码的时候,要求密码有短暂的显示过程,如下图:

问题思考

首先解决的是如何在input框里实现类似于android中hint属性,html5中添加placeholder,但是现在不是html5,怎么办?

解决办法

以输入用户名为例:

<li>
 <input name="textfield" type="text" id="usern"  value="请输入您的用户名"  class="input userName inputholder" />
</li>
写一个JS
$.fn.inputholder=function(){
    var dval=$(this).val();
    $(this).focus(function(){
        $(this).val(‘‘).addClass(‘focous‘);
        }).blur(function(){
        if($(this).val()==‘‘){
            $(this).val(dval).removeClass(‘focous‘);
            }
        });
    };
var inputholder=$(‘.inputholder‘);
if(inputholder.length){
    inputholder.each(function() {
      $(this).inputholder()
   })
};

当输入框获得焦点的时候,将这个值清空,当丢失焦点的时候,再将之前已经存好的值付给输入框。

下面解决密码输入时有短暂的显示效果:

从网上找到了一个Js库: IPass.packed.js

密码的input如下:

<li>
     <input name="pwdPrompt" type="text" id="textfield2" value="请输入您的密码" class="input passWord inputholder"/>
     <input name="pwd" type="password" id="password" class="input passWord hide"  />
</li>

由于我们之前为了显示:”请输入您的密码” 将input的type设为text  所以我们又写了一个input,将其type设为password 并且将这个input隐藏。

在浏览器的开发人员工具中我们可以看到:

会存在一个id为password—0的input,这个就是我们引入的IPass.packed.js自动生成的。

在我的理解看来,先是写一个type为password的input,导入的js会在这个的基础上自动生成一个新的input,这个input是的type为text,可以显示密码。

与我们之前写好的type为password的input将结合,实现密码短暂显示过程。

然后我们在document.ready里加入:

$(document).ready(function(){
    // to enable iPass plugin
    $("input[type=password]").iPass();
    $("input[name=pwdPrompt]").focus(function () {
        $("input[name=pwdPrompt]").hide();
        $("input[name=password-0]").show().focus();
    });
    $("input[name=password-0]").blur(function () {
        if ($(this).val() == "") {
            $("input[name=pwdPrompt]").show();
            $("input[name=password-0]").hide();
        }
    });

});

注意:这个必须写在document.ready 里,而不是写在js里。

主要还是通过隐藏和显示来控制显示,从而达到密码短暂显示和提示字体隐藏的功能。

时间: 2024-12-17 17:40:53

JQuery实现密码有短暂的显示过程和实现 input hint效果的相关文章

JQuery实现密码有短暂的显示过程和实现input hint效果

目录: 一.实现目的 二.问题思考 三.解决办法 1.输入用户名 2.输入密码短暂显示 一.实现目的 这几天做项目的时候,客户要求在文本框输入密码的时候,要求密码有短暂的显示过程,如下图: 二.问题思考 首先解决的是如何在input框里实现类似于android中hint属性,html5中添加placeholder,但是现在不是html5,怎么办? 三.解决办法 1.输入用户名 <li> <input name="textfield" type="text&q

Jquery 实现密码框的显示与隐藏【转载自http://blog.csdn.net/fengzhishangsky/article/details/11809069】

<html> <head>  <script type="text/JavaScript"  src="jQuery-1.5.1.min.js"></script>  <script type="text/javascript">   $(function(){    $("#chk").bind({//绑定一个点击事件     click: function(){ 

jQuery+Ajax+PHP+Mysql实现分页显示数据

css <style type="text/css"> #loading{ position: absolute; top: 200px; left:400px; } #container .pagination ul li.inactive, #container .pagination ul li.inactive:hover{ background-color:#ededed; color:#bababa; border:1px solid #bababa; curs

使用javascript生成的植物显示过程特效

查看效果:http://keleyi.com/keleyi/phtml/html5/33.htm .NET版本:http://keleyi.com/a/bjac/66mql4bc.htm 完整HTML文件代码: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>使用javascript生成的植物显示过程特效 - 柯乐义</title&g

基于jQuery左侧小图滚动右侧大图显示代码

今天给大家分享一款 jQuery左侧小图滚动右侧大图显示代码是一款基于jQuery实现的左侧滚动图片点击大图查看效果代码.该实例适用浏览器:IE8.360.FireFox.Chrome.Safari.Opera.傲游.搜狗.世界之窗.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div class="caseImg03 w1002"> <div class="slideCase03"> <div class=&q

修改u-boot的开机logo及显示过程【转】

本文转载自;http://blog.csdn.net/voice_shen/article/details/6789424 [ u-boot: Git://git.denx.de/u-boot.git] [tag: v2011.09-rc1 ] 修改u-boot的开机logo其实很简单.请见下面步骤. 1. 获取一张BMP的图片,修改之,让其色深为8位,即256色,如果用24位,则显示出问题,(至于是否能用24位,有待深究). 2. 将制作好的BMP图片,放置到<u-boot>/tools/l

jquery 页眉单行信息滚动显示

JSP: 以下是控制滚动的样式,将滚动的内容查询出来,放在一个div 或者别的容器里面,我这里使用的是<dt> <style> #newCglist{width:300px;height:14px;line-height:14px;overflow:hidden} #newCglist li{height:14px;padding-left:10px;} </style> 以下是滚动内容展示的容器 <dt class="positionrel"

jquery实现密码强度检测

jquery实现密码强度验证 jquery实现密码强度验证 JS代码: $('#pass').keyup(function(e) { var strongRegex = new RegExp("^(?=.{8,})(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*\\W).*$", "g"); var mediumRegex = new RegExp("^(?=.{7,})(((?=.*[A-Z])(?=.*[a-z]))|((?

bobo JQuery实现Ajax 根据商品名称自动显示价格

数据库字段:Id(主键,自增),Name(商品名称),Price(商品单价) 添加数据集DataSetProducts ,添加方法:GetDataByName() ----->对应SQL: SELECT id, name, price FROM dbo.T_Productwhere name = @name 新建一般处理程序:GetPrice.ashx 代码: using System;using System.Collections.Generic;using System.Linq;usin