use*_*048 93 javascript jquery jquery-ui autocomplete
看来这是JQuery UI 1.9.0中的一个新功能,因为之前我曾多次使用过JQuery UI,而且这篇文章从未加速过.
找不到与API文档相关的任何内容.
因此,使用本地源的基本自动完成示例
$( "#find-subj" ).autocomplete({
source: availableTags
});
Run Code Online (Sandbox Code Playgroud)
当搜索匹配时,它显示此相关帮助文本:
'1结果可用,使用向上和向下箭头键进行导航.
如何以一种很好的方式禁用它,而不是通过使用JQuery选择器删除它.
TK1*_*123 149
我知道这已经回答了,但只是想给出一个实现示例:
var availableTags = [
"ActionScript",
"AppleScript",
"Asp",
"BASIC",
"C",
"C++"
];
$("#find-subj").autocomplete({
source: availableTags,
messages: {
noResults: 'no results',
results: function(amount) {
return amount + 'results.'
}
}
});
Run Code Online (Sandbox Code Playgroud)
Ber*_*and 86
这用于可访问性,隐藏它的简单方法是使用CSS:
.ui-helper-hidden-accessible { display:none; }
Run Code Online (Sandbox Code Playgroud)
或者(见Daniel的评论)
.ui-helper-hidden-accessible { position: absolute; left:-999em; }
Run Code Online (Sandbox Code Playgroud)
Mik*_*ell 22
这里的最佳答案达到了理想的视觉效果,但是却失败了支持ARIA的jQuery的对象,对于依赖它的用户来说有点蠢!那些提到jQuery CSS为你隐藏的人是正确的,这就是这样做的风格:
.ui-helper-hidden-accessible {
border: 0;
clip: rect(0 0 0 0);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px;
}
Run Code Online (Sandbox Code Playgroud)
请将其复制到样式表中,而不是删除邮件,请:).
j08*_*691 17
根据这篇博客:
我们现在使用ARIA实时区域来宣布结果何时可用以及如何浏览建议列表.可以通过messages选项配置通知,该选项有两个属性:noResults表示没有返回项目时的结果,以及返回至少一个项目时的结果.通常,如果希望使用其他语言编写字符串,则只需要更改这些选项.在我们为所有插件进行字符串操作和国际化的完整解决方案时,messages选项在未来版本中可能会发生变化.如果您对邮件选项感兴趣,我们建议您只阅读来源; 相关代码位于自动完成插件的最底部,只有几行.
...
那么这如何应用于自动完成小部件?好吧,现在当你搜索一个项目时,如果你安装了一个屏幕阅读器,它会读到一些类似"1个结果可用,使用向上和向下箭头键进行导航"的内容.很酷,对吧?
因此,如果你去github并查看自动完成源代码,在第571行附近,你会看到实际实现的位置.
小智 10
添加jquery css也可以删除教学文本.
<link
rel="stylesheet"
href="http://code.jquery.com/ui/1.9.0/themes/smoothness/jquery-ui.css" />
Run Code Online (Sandbox Code Playgroud)
小智 5
由于这是出于可访问性原因,因此最好使用 CSS 隐藏它。
不过,我建议:
.ui-helper-hidden-accessible { position: absolute; left: -9999px; }
Run Code Online (Sandbox Code Playgroud)
而不是:
.ui-helper-hidden-accessible { display:none; }
Run Code Online (Sandbox Code Playgroud)
因为前者会将项目隐藏在屏幕外,但仍允许屏幕阅读器阅读它,而display:none不会。