我遇到了问题。我实际上正在为自己制作一个博客,一切都很顺利。但是在某个时刻我想用我的登录输入做一些很酷的事情,那么如果我可以逐个删除占位符字符呢?
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可以正常工作,但是当我尝试使用密码时...这两个被删除了一半。为什么?我的错误在哪里?
答案 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);
}