我有一个文本框html元素,如下所示:
FORMAT(CAST(ROUND(column) AS INT), '#,0.0000')
要完成的id是只有在用户在keyup事件被触发后2秒释放密钥后才会激活的代码。
所以,例如:
用户在各自的电子邮件地址中键入,然后我们等待2秒钟以确定他们确实不再输入然后我应用我的验证码。
我对标签键有一个onkeydown,但效果很好,但我正在寻找<input type="text" id="emailaddress" value="Emailaddress"/>
答案 0 :(得分:1)
您正在寻找的是'去抖'。这是一个简单的例子:
var debounce;
document.getElementById('emailaddress').addEventListener('keyup', function(e) {
clearTimeout( debounce );
debounce = setTimeout( function() {
console.log('I waited 2 seconds before firing after last keyup');
}, 2000);
});
<input type="text" id="emailaddress" value=""/>
它仅在动作停止尝试一段时间后触发代码(在本例中为2秒)。我同意评论者认为2秒是很长的时间,通常对输入的去抖约为300毫秒(根据我的经验)。