javascript - 如果我重复输入,则会停止传播

标签 javascript jquery stoppropagation

我正在为网站构建一个自定义搜索引擎,并且搜索是通过 AJAX 在 keyup 事件上完成的,因此当您开始键入时(如果您键入两个以上的字符并且在 trim 字符串后),AJAX 会调用服务器完成。

它工作得很好,但我正在考虑一个场景,当您开始连续输入四个或任意数量的字符时,您输入的字符数就会有多少个调用。例如,如果您输入 10 个字符,就会发出很多请求。

在这种情况下,我在想是否有一种简单的方法可以在发生此类行为时停止之前开始的所有操作,并在疯狂输入后继续搜索(:

最佳答案

您可以使用Underscore debounce为了那个原因。 让 key up 事件调用 undersocre 的函数而不是你的函数,这样 underscore 就会知道何时调用你的函数。

关于javascript - 如果我重复输入,则会停止传播,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13142340/

相关文章:

javascript - 视频暂停时显示海报图像。如何让它更平滑?

jquery - 在 jQuery 中单击元素外部时触发的函数

javascript - 在 Promise 中传递变量

javascript - jsHint "function not defined"问题,函数声明的顺序很重要?

javascript - 如何将javascript变量输出到控制台?

jquery - 如果 CSS 背景在服务器上发生变化,请使用 jQuery 更新它

javascript - 如何在 ajaxSend 中正确添加数据参数?

jquery - jquery.ajax 完成和失败方法中包含哪些 HTML 状态代码

javascript - stopPropagation() 不适用于委托(delegate)事件

javascript - 固定 div 中的 div 是否捕获鼠标点击?