Ускорение инициализации автозаполнения jQuery - PullRequest
1 голос
/ 10 июня 2011

Я использую несколько (100+) полей автозаполнения на одной странице, все с одним и тем же источником данных, и заметил, что инициализация полей автозаполнения немного медленная.Из некоторого профилирования, которое я сделал, похоже, узким местом является создание меню (this.menu = $( "<ul></ul>" ) и т. Д. В исходном коде).

Кажется, что нет необходимости создавать отдельные меню для каждого поля автозаполненияи поэтому мне было интересно, знает ли кто-нибудь способ ускорить инициализацию.

Я думал о том, чтобы jQuery UI просто использовал одно и то же меню (или предпочтительно один и тот же объект автозаполнения) во всех полях ввода,но я не знаю, как это можно сделать без изменения исходного кода плагина.

Ответы [ 2 ]

2 голосов
/ 10 июня 2011

Вы можете попробовать инициализировать поле автозаполнения только тогда, когда пользователь щелкает поле

1 голос
/ 04 марта 2015

У меня возникла та же проблема, и я исправил ее с помощью инициализации автозаполнения в фокусе:

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

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

});

Поле с функцией автозаполнения нуждается в классе «завершить» с курса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...