zoukankan      html  css  js  c++  java
  • Jquery简单的placeholder效果

    Jquery简单的placeholder效果

      由于IE6-IE9不支持HTML5中的placeholder,所以自己依赖于Jquery简单的写了一个,供参考!

      先看看效果吧!如下JSFiddle地址

     查看效果链接

    JS代码如下:

    /*
     * JS placeholder
     * IE6-IE9不支持HTML5中的placeholder
     */
        
    function Placeholder(options) {
        this.config = {
            defaultColor: '#ccc',
            curColor: '#333',
            targetElem: '.placeholderCls'
        };
    
        this.init(options);
    }
    
    Placeholder.prototype = {
    
        constructor:Placeholder,
    
        init: function(options){
            this.config = $.extend(this.config, options || {});
            var self = this,
                _config = self.config;
            
            $(_config.targetElem).each(function(){
                var supportPlaceholder = 'placeholder' in document.createElement('input');
                if(!supportPlaceholder) {
                    var defaultValue = $(this).attr('placeholder');
                    $(this).focus(function(){
                        var pattern = new RegExp("^" + defaultValue + "$|^$");
                        pattern.test($(this).val()) && $(this).val('').css('color',_config.curColor);
                    }).blur(function(){
                        if($(this).val() == defaultValue) {
                            $(this).css('color',_config.defaultColor);
                        }else if($(this).val().length == 0){
                            $(this).val(defaultValue).css('color', _config.defaultColor);
                        }
                    }).trigger('blur');
                }
            });
            
        }    
    };
        

    HTML代码如下:

    <form id="form1">
        <h3>通过value方式模拟placeholder</h3>
            
        <p>
            <label for="username1">用户名:</label>
            <input type="text" class="placeholderCls" placeholder="请输入用户名">
        </p>
        <p>
            <label for="address1">地 址:</label>
            <input type="text" class="placeholderCls" placeholder="请输入地址">
        </p>
        <p>
            <label for="remarks1">备 注:</label>
            <textarea placeholder="请输入备注" class="placeholderCls"></textarea>
        </p>
    </form>

    代码初始化:

    <script>
        new Placeholder({});
    </script>
  • 相关阅读:
    纪念时至今日才学会的命令行
    面向对象程序设计寒假作业2
    面向对象程序设计寒假作业1
    POJ 2104 K-th Number
    HihoCoder 1325 平衡树·Treap
    HihoCoder 1079 离散化
    POJ 2135 Farm Tour
    Luogu P1231 教辅的组成
    洛谷 P3410 拍照
    洛谷 P3370 【模板】字符串哈希
  • 原文地址:https://www.cnblogs.com/tugenhua0707/p/3763075.html
Copyright © 2011-2022 走看看