Parece que este é um novo recurso no JQuery UI 1.9.0, porque eu usei o JQuery UI muitas vezes antes e este texto nunca apareceu.
Não foi possível encontrar nada relacionado na documentação da API.
Portanto, usando um exemplo de preenchimento automático básico com fonte local
$( "#find-subj" ).autocomplete({
source: availableTags
});
Quando a pesquisa corresponde, ela mostra este texto auxiliar relacionado:
'1 resultado está disponível, use as setas para cima e para baixo para navegar.'
Como posso desativá-lo de uma maneira legal, não removendo-o com seletores JQuery.
javascript
jquery
jquery-ui
autocomplete
user1236048
fonte
fonte
Respostas:
Eu sei que isso foi respondido, mas só queria dar um exemplo de implementação:
fonte
source: availableTags
faz? Eu removi e ainda não tinha mensagens.availableTags
poderia ser uma variável local contendo um objeto JSON de url para mapeamento de palavras.[{ '/tag/cats': 'Cats', etc... }]
Então, quando o usuário digitarCa
Cats, aparecerá no menu suspenso e, quando selecionado ou clicado, pode preencher um campo oculto com a url, por exemplo.Isso é usado para acessibilidade, uma maneira fácil de esconder é com CSS:
Ou (veja o comentário de Daniel abaixo)
fonte
left: -9999px
, você também pode usarleft: 200%
(200% vs. 100% apenas para conta para quaisquer possíveis peculiaridades do navegador, onde 100% não bastante obtê-lo fora da tela).A melhor resposta aqui atinge o efeito visual desejado, mas derrota o objeto de jQuery com suporte ARIA e é um pouco desagradável para os usuários que confiam nele! Aqueles que mencionaram que jQuery CSS esconde isso para você estão corretos, e este é o estilo que faz isso:
Copie isso em sua folha de estilo em vez de remover a mensagem, por favor :).
fonte
clip
propriedade, pois agora está obsoleta - consulte developer.mozilla.org/en-US/docs/Web/CSS/clipDe acordo com este blog :
Portanto, se você for ao github e olhar o código-fonte do preenchimento automático , em torno da linha 571 verá onde isso está realmente implementado.
fonte
Adicionar o css jquery também funcionou para remover o texto de instrução.
fonte
Como isso está lá por motivos de acessibilidade, provavelmente é melhor ocultá-lo com CSS.
No entanto, eu sugeriria:
Ao invés de:
Porque o primeiro esconderá o item fora da tela, mas ainda permitirá que os leitores de tela o leiam, enquanto
display:none
não.fonte
left: -9999px
, uso apenasleft: 200%
(200% vs. 100% apenas para conta para quaisquer possíveis peculiaridades do navegador, onde 100% não bastante obtê-lo fora da tela).Bem, esta pergunta é um pouco mais antiga, mas o texto não aparece quando você inclui o arquivo css correspondente:
Claro que você deve inserir um tema real em vez de,
YOUR_THEME_HERE
por exemplo, "suavidade"fonte
Defina como o próprio tema jQuery o define. Muitas das outras respostas sugerem a inclusão de uma folha de estilo inteira, mas se você quiser apenas o CSS relevante, é assim
http://code.jquery.com/ui/1.9.0/themes/smoothness/jquery-ui.css
:fonte
Adicionar esse código logo após o preenchimento automático em seu script empurrará o ajudante chato para fora da página, mas as pessoas que usam leitores de tela ainda se beneficiarão com isso:
Não sou fã de manipular CSS com JS, mas nesse caso acho que faz sentido. O código JS criou o problema em primeiro lugar, e o problema será resolvido algumas linhas abaixo no mesmo arquivo. IMO, isso é melhor do que resolver o problema em um arquivo CSS separado que pode ser editado por outras pessoas que não sabem por que a classe .ui-helper-hidden-acessível foi modificada dessa forma.
fonte
left: -9999px
, uso apenasleft: 200%
(200% vs. 100% apenas para conta para quaisquer possíveis peculiaridades do navegador, onde 100% não bastante obtê-lo fora da tela).O jQuery CSS .ui-helper-hidden-acessível está no arquivo themes / base / core.css. Você deve incluir este arquivo (no mínimo) em suas folhas de estilo para compatibilidade futura.
fonte