A caixa de combinação de preenchimento automático da interface do usuário do jQuery é muito lenta com grandes listas de seleção
Estou usando uma versão modificada da caixa de combinação de preenchimento automático da interface do usuário do jQuery, conforme mostrado aqui:http://jqueryui.com/demos/autocomplete/#combobox
Para o bem desta pergunta, digamos que eu tenha exatamente esse código ^^^
Ao abrir a caixa de combinação, clicando no botão ou concentrando-se na entrada de texto da caixa de combinação, há um grande atraso antes de mostrar a lista de itens. Esse atraso fica visivelmente maior quando a lista de seleção tem mais opções.
Esse atraso também não ocorre apenas na primeira vez, acontece sempre.
Como algumas das listas de seleção deste projeto são muito grandes (centenas e centenas de itens), o atraso / congelamento do navegador é inaceitável.
Alguém pode me indicar a direção certa para otimizar isso? Ou mesmo onde está o problema de desempenho?
Acredito que o problema possa estar relacionado à maneira como o script mostra a lista completa de itens (um preenchimento automático procura uma sequência vazia); existe outra maneira de exibir todos os itens? Talvez eu pudesse criar um caso único para exibir todos os itens (como é comum abrir a lista antes de começar a digitar) que não faz toda a correspondência de regex?
Aqui está um jsfiddle para mexer com:http://jsfiddle.net/9TaMu/