逐个字符删除

时间:2015-06-20 12:31:40

标签: javascript

我遇到了问题。我实际上正在为自己制作一个博客,一切都很顺利。但是在某个时刻我想用我的登录输入做一些很酷的事情,那么如果我可以逐个删除占位符字符呢?

var run = 0;
var inte;
function removet(obj) {
    run = 0;
    setInterval(function () {
        if(run > 8) {
            clearInterval();
        }
        else {
            stri = obj.placeholder;
            stri = stri.substring(0, stri.length - 1);
            obj.placeholder = stri;
            run++;
        }
    }, 22, obj);
}

而且,它的工作原理! ......但是。我有点问题。 这是我的HTML:

<input type="text" placeholder="Username" onblur="this.placeholder = 'Username'" onfocus="removet(this)">
<input type="password" placeholder="Password" onblur="this.placeholder = 'Password'" onfocus="removet(this)">
<button type="submit" id="login-button">Login</button>

删除USERNAME可以正常工作,但是当我尝试使用密码时...这两个被删除了一半。为什么?我的错误在哪里?

1 个答案:

答案 0 :(得分:1)

尝试不清除所有间隔

function removet(obj) {
    run = 0;
    var k= setInterval(function () {
        if(run > 8) {
            clearInterval(k);
        }
        else {
            stri = obj.placeholder;
            stri = stri.substring(0, stri.length - 1);
            obj.placeholder = stri;
            run++;
        }
    }, 22, obj);
}