加速jQuery自动完成初始化

时间:2011-06-10 10:10:01

标签: jquery jquery-ui autocomplete jquery-ui-autocomplete performance

我在同一页面上使用多个(100+)自动完成字段,所有字段都使用相同的数据源,并注意到自动填充字段的初始化有点慢。从我做过的一些分析看来,瓶颈就是在源代码中创建菜单(this.menu = $( "<ul></ul>" )等等。)

为每个自动完成字段创建单独的菜单似乎没有必要,所以我想知道是否有人知道如何更快地进行初始化。

我在考虑让jQuery UI在所有输入字段上使用相同的菜单(或者最好是相同的自动完成对象),但我不知道如何在不修改插件源代码的情况下完成此操作。

2 个答案:

答案 0 :(得分:2)

您可以尝试仅在用户点击字段时初始化自动填充字段

答案 1 :(得分:1)

我遇到了同样的问题并通过在焦点上初始化自动完成来修复它:

$(".complete").focus(function(){

    $(this).autocomplete({
        //your options  
    });

});

具有自动完成功能的字段需要课程“完成”。