【发布时间】:2013-08-13 04:26:35
【问题描述】:
对于快速触发的keypress 事件,我想将事件的处理限制为每 X 秒最多一次。
我已经在使用 jQuery 进行事件处理,因此最好使用基于 jQuery 的解决方案,尽管原生 javascript 也可以。
This jsfiddle 显示按键快速触发,对处理没有任何限制
This jsfiddle 使用
setTimeout()实现将处理限制为每 0.5 秒一次。
我的问题是
jQuery 有内置的方法吗?我在
.on()docs 没有看到任何内容如果没有,有没有比我在 second jsfiddle example 中使用的更好的模式在 vanilla JS 中执行此操作?
【问题讨论】:
-
您可能需要考虑使用 keyup 代替,除非您有某些理由想要重复。
-
@zerkms 谢谢,我真的很想在没有插件的“纯”jQuery 中做到这一点,但这非常有帮助 - 考虑推广回答,这样我就可以投票了!
-
@davnicwil:仅链接的答案是一件无聊的事情,我没有心情重新表述链接中已经提供的内容:-)
-
如果您只想获取用户在文本字段中输入的数据,在他完成输入后,您可以使用“更改”事件
标签: javascript jquery javascript-events