jQuery   发布时间:2022-04-19  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了jQuery自动完成源属性as function(){}非常慢大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有两个使用相当大的json对象(1.2mb)的测试用例:

source: data

source: function (request,responsE) {
                response(data);
            }

在第一种情况下,自动完成功能正如我所料.

在第二种情况下,自动完成偶尔会起作用并且非常慢.有时浏览器会在再次释放之前挂起3-4秒“没有响应”.

第二种情况与第一种情况相比有何不同?

(我会在某个时候在这函数中加入一些过滤逻辑,但是现在我正在测试这个).

解决方法

当您将数据集作为本地对象传递时,您的数据集将被过滤,但在使用回调时不会被过滤(这将是程序员的责任).

使用来源时:数据自动完成功能会为您过滤结果集:

response($.ui.autocomplete.filter(array,request.term));

使用回调源时:函数(请求,响应){response(data)}没有应用过滤,因此您的页面正在为1.3MB的json生成标记.

自动完成从本地源加载数据时,它会缓存数据.远程检索时,认情况下不会缓存它.

此jQuery UI自动完成文档解释了该行为,并建议如何为远程调用实现缓存.

http://jqueryui.com/demos/autocomplete/#remote-with-cache

@H_772_42@

大佬总结

以上是大佬教程为你收集整理的jQuery自动完成源属性as function(){}非常慢全部内容,希望文章能够帮你解决jQuery自动完成源属性as function(){}非常慢所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。