<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>placeholder 效果的实现</title>
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
</head>
<style>
body {
        font-size: 12px;
} div {
        position: relative;
} .userName-group,
.pswd-group{
        width: 153px;
        height: 24px;
        margin-bottom:10px;
} label{
        margin-left:3px;
        line-height: 24px;
        z-index: 1;
        color: #999;
}
.userName-group input,
.pswd-group input{
        position: absolute;
        top: 0;
        left:0;
        width: 153px;
        height:22px;
        border:1px solid #bbb;
        z-index: 999;
        background-color: transparent;
}
</style>
<body>
<h1>placeholder 效果</h1>
<input type="text" placeholder="用户名">
<input type="password" placeholder="密码"> <h1>placeholder 效果的实现</h1> <div class="userName-group">
    <label for="username">用户名</label>
    <input type="text" id="username">
</div>
<div class="pswd-group">
    <label for="password">密码</label>
    <input type="password" id="password">
</div>
<script> /*$(function(){        
        var input=$("input"),
                len=input.length;
        for(var i=0;i<len;i++){//判断浏览器是否记住信息
                var val=input.eq(i).val();
                if(val!==''){
                        input.eq(i).prev('label').hide();
                }
        }
        $("label").click(function(){
                $(this).next().focus();
        })        
        $("#username,#password").keydown(function(){
                $(this).prev().hide();
        }).blur(function(){
                var _this=$(this);
                if (_this.val() == ''){
                        _this.prev().show();
                }
        });
})*/ //判断浏览器
var Sys = {};
var ua = navigator.userAgent.toLowerCase();
if (window.ActiveXObject){
        Sys.ie = ua.match(/msie ([\d.]+)/)[1];
}
//else if (document.getBoxObjectFor){
//        Sys.firefox = ua.match(/firefox\/([\d.]+)/)[1];
//}else if (window.MessageEvent && !document.getBoxObjectFor){
//        Sys.chrome = ua.match(/chrome\/([\d.]+)/)[1];
//}else if (window.opera){
//        Sys.opera = ua.match(/opera.([\d.]+)/)[1];
//}else if (window.openDatabase){
//        Sys.safari = ua.match(/version\/([\d.]+)/)[1];
//} window.onload=function(){        
        var        input=document.getElementsByTagName('input'),
                label=document.getElementsByTagName('label'),
                username=document.getElementById('username'),
                pwd=document.getElementById('password'),
                len=input.length;
                
        for(var i=0;i<len;i++){
                var val=input.item(i).value,
                        div=input.item(i).parentNode;
                if(val!==''){
                        label_s_h(div,'none');
                }
        }
        label.onclick=function(){
                this.nextSibling('input').focus;        
        }         username.onkeydown=pwd.onkeydown=function(){
                var div=this.parentNode;
                        label_s_h(div,'none');
        }
        username.onblur=pwd.onblur=function(){
                var _this=this,
                        div=this.parentNode,
                        val=_this.value;
                if(val==''){
                        label_s_h(div,'block');
                }
        }
}
s=Sys.ie||'';//没有空s为undefined
function label_s_h(o,d){
        /*if(s=='6.0'||s=='7.0'||s=='8.0'){
                //s.indexOf('6'||'7'||'8')>0不知道为什么这样不对 ??
                //s=='6.0'||'7.0'||'8.0' 写在label_s_h()函数里判断就出错,chrome下也执行到这里,不写在函数里是对的
                o.firstChild.style.display=d;//不知道为什么不能用.previousSibling ??
                
        }else{
                o.childNodes[1].style.display=d;//不知道为什么ie9以上和chrome不支持firstChild ???
        }*/
        s=='6.0'||s=='7.0'||s=='8.0'?o.firstChild.style.display=d:o.childNodes[1].style.display=d;
} </script>
</body>
</html>

placeholder 效果的实现,input提示字,获取焦点时消失的更多相关文章

  1. input提示字在有焦点消失或输入改变时消失

    一:获取焦点时 提示字消失 <input type="text" name="textfield" value="这里是提示内容" o ...

  2. IOS 固定定位底部input输入框,获取焦点时弹出的输入法键盘挡住input

    移动页面经常会做到这样一个效果,看下面的图片,重点就是那个固定定位的底部,里面有个input输入框,在输入字符的时候,安卓手机看着是完全没有问题! 1.页面没有点击底部input的初始状态 2.安卓手 ...

  3. a、button、input点击获取焦点时出现蓝色边框,如何去掉

    a,button,input{ -webkit-tap-highlight-color: rgba(0, 0, 0, 0); -webkit-user-modify: read-write-plain ...

  4. HTML5轻松实现搜索框提示文字点击消失---及placeholder颜色的设置

    在做搜索框的时候无意间发现html5的input里有个placeholder属性能轻松实现提示文字点击消失功能,之前还傻傻的在用js来实现类似功能... 示例 <form action=&quo ...

  5. HTML 5 <input> placeholder 属性 实现搜索框提示文字点击输入后消失

    H5之前要实现这个功能还要用到JS,H5出来之后新增加了placeholder属性,有了这个属性就就能轻松实现这个功能. 定义和用法 placeholder 属性提供可描述输入字段预期值的提示信息(h ...

  6. 浅谈实现placeholder效果的几种方案

    placeholder是html5<input>的一个属性,它提供可描述输入字段预期值的提示信息(hint), 该提示会在输入字段为空时显示.高端浏览器支持此属性(ie10/11在获得焦点 ...

  7. 编辑框添加灰色提示字(html+VC)

    Html中添加灰色提示字,使用属性placeholder即可! <input type="text" placeholder="要显示的文字"> 但 ...

  8. 【jquery】基于 jquery 实现 ie 浏览器兼容 placeholder 效果

    placeholder 是 html5 新增加的属性,主要提供一种提示(hint),用于描述输入域所期待的值.该提示会在输入字段为空时显示,并会在字段获得焦点时消失.placeholder 属性适用于 ...

  9. 在IE8等不支持placeholder属性的浏览器中模拟placeholder效果

    placeholder是一个很有用的属性,可以提示用户在input框中输入正确的内容,但是IE8以及IE8一下的浏览器不支持该属性,我们可以使用js来模拟相似的效果.下面直接上代码: <!doc ...

随机推荐

  1. select列表遍历和触发事件

    1.以下两种都是jquery获取select列表被选中的value.var strText=$("#select_id").find("option:selected&q ...

  2. 前端与算法 leetcode 344. 反转字符串

    目录 # 前端与算法 leetcode 344. 反转字符串 题目描述 概要 提示 解析 解法一:双指针 解法二:递归 算法 传入测试用例的运行结果 执行结果 GitHub仓库 # 前端与算法 lee ...

  3. 宝塔webhook配合码云,本地git push 服务器自动pull

    emmmm,这其实是一个很简单的一件事情,但是有很多坑,记录一下 先大概讲一下原理吧,就是每次您 push 代码后,都会给远程 HTTP URL 发送一个 POST 请求 更多说明 » 然后在宝塔这边 ...

  4. servlet和response

    servlet基础知识 Servlet在内存中是单例----单实例对象一个Servlet类 在内存中最多有一个对象 一个项目有多少功能,将来就有多少Servlet. servlet是自启动的,就是可以 ...

  5. php 求商数和余数 的函数

    //返回两数相除之商和余数function get_div_and_mod($left_operand, $right_operand){ $div = intval($left_operand / ...

  6. 『正睿OI 2019SC Day7』

    简单数论 质因子分解 素性测试 素性测试指的是对一个正整数是否为质数的判定,一般来说,素性测试有两种算法: \(1.\) 试除法,直接尝试枚举因子,时间复杂度\(O(\sqrt n)\). \(2.\ ...

  7. Windows下使用Nexus搭建Maven私服

    A    http://www.pianshen.com/article/249363068/ nexus3安装与配置 B https://www.cnblogs.com/hujunzheng/p/9 ...

  8. Calendar类set方法中的坑

    最近写了一个支付宝微信对账报表,发现系统金额比支付宝微信的少好多,左查右查发现是追缴金额没统计到,再一查发现月结束日期为2019-09-31,9月咋会有31,为啥呢就追缴金额不行呢,因为其他类型用TI ...

  9. JavaScript 之 RegExp 对象

    RegExp 正则表达式对象 一.正则表达式 正则表达式:定义字符串的组成规则. 1.单个字符:[ ] 如:[a].[ab].[a-zA-Z0-9] 特殊符号代表特殊含义的单个字符: \d:单个数字字 ...

  10. AMD规范中模块id的命名规则

    AMD 即 Asynchronous Module Definition, 中文是“ 异步模块定义”的意思. AMD 规范制定了定义模块的规则,这样模块和模块的依赖可以被异步加载. AMD 规范只定义 ...