密码显示隐藏切换

 <div class="pwd-wrap">
            <input type="password" id="pwd" value="123456">
            <span id="btns">
                <a>显示</a>
                <a class="cur">隐藏</a>
            </span>
        </div>
 $(function() {
            var $pwd = $('.pwd-wrap');

            $pwd.on('click', '.btns a', function() {
                var $this = $(this);

                $this.addClass('cur').siblings('a').removeClass('cur');

                if ($this.index()) {
                    $pwd.find('#pwd').attr('type', 'password');
                } else {
                    $pwd.find('#pwd').attr('type', 'text');
                }
            });
        })
              

还是要说说原理的,最主要的思路就是<strong>改变密码框的类型strong>,点击按钮切换,切换的是inputtype属性,在passwordtext两者之间切换。

这个效果是不是很简单呢,当我看到的时候想都没想就写出来了 ^_^

顺道写个JS原生版本的吧。

window.onload = function() {
            var input = document.getElementById('pwd'),
                btn = document.getElementById('btns'),
                btns = btn.getElementsByTagName('a');

            for (var i = 0; i < btns.length; i++) {
                btns[i].onclick = function() {
                    for (var j = 0; j < btns.length; j++) {
                        btns[j].className = '';
                    }
                    this.className = 'cur';

                    if (this.innerHTML == '隐藏') {
                        input.setAttribute('type', 'password');
                    } else {
                        input.setAttribute('type', 'text');
                    }
                }
            }
        }
               

 

posted @ 2017-04-21 19:10  hupan508  阅读(464)  评论(0编辑  收藏  举报