问题描述
想知道是否有人对 typeahead.js 和 Bloodhound(来自 this repo)有这种经验。当我从 AJAX 请求中获得猎犬建议时,屏幕阅读器 (NVDA) 会读取可用结果的总数。当我仅从本地 JSON 或 JS 对象获取它们时,它们不会被屏幕阅读器读取。这些建议对视力正常的用户显示得很好,但屏幕阅读器显示“0 个结果可用”。
我无法让 NVDA 读取 this jsfiddle 中的任何一种情况,但所有代码都在那里。为了补充小提琴,我创建了 a Github repo,可以在其中重现错误。抱歉,这可能比解决问题所需的代码多得多。以下是用于静态数据的 Bloodhound 设置的片段。
//Bloodhound for other / alt / fake data
var otherBH = new Bloodhound({
name: "other",datumTokenizer: function (o) {
var addr= Bloodhound.tokenizers.whitespace(o.addr);
return addr;
},queryTokenizer: Bloodhound.tokenizers.whitespace,identify: function(other) {return other.addr; },local: function() {
var list = [];
$.each(altdata,function(rec,val){
list.push({addr: val.fakeaddr,source: "other"});
});
return list;
}
})
otherBH.initialize();
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)