Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/436.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在d3.js sunburst图表中的节点上设置initial.focus()?_Javascript_D3.js_Accessibility_Nvd3.js_Section508 - Fatal编程技术网

Javascript 如何在d3.js sunburst图表中的节点上设置initial.focus()?

Javascript 如何在d3.js sunburst图表中的节点上设置initial.focus()?,javascript,d3.js,accessibility,nvd3.js,section508,Javascript,D3.js,Accessibility,Nvd3.js,Section508,我正在努力使无障碍/508兼容。有人知道我如何使用.focus()调用使中心圆具有默认焦点吗?这样,当用户仅限于键盘导航与图表交互时,起点总是突出显示中心圆 我对可访问性标准相当陌生。但我想实现的是双向键盘导航。如有任何建议,将不胜感激 原则上,实现这一点的最简单方法是在根元素上设置一个ID并选择它(例如,使用document.getElementById()),然后对其调用.focus() 当您使用像NVD3这样的库时,它并没有真正为您提供这种灵活性,但是对于根元素来说,它仍然很容易工作。su

我正在努力使无障碍/508兼容。有人知道我如何使用.focus()调用使中心圆具有默认焦点吗?这样,当用户仅限于键盘导航与图表交互时,起点总是突出显示中心圆


我对可访问性标准相当陌生。但我想实现的是双向键盘导航。如有任何建议,将不胜感激

原则上,实现这一点的最简单方法是在根元素上设置一个ID并选择它(例如,使用
document.getElementById()
),然后对其调用
.focus()

当您使用像NVD3这样的库时,它并没有真正为您提供这种灵活性,但是对于根元素来说,它仍然很容易工作。sunburst由一组
路径
元素组成,第一个元素代表根。因此,您只需选择容器的第一个
路径
子元素,获取DOM节点并调用
.focus()


我不熟悉NVD3,但html元素通常不会接受focus()调用,除非它们是表单元素或链接,或者您将tabindex设置为-1或0。例如,除非将更改为,否则不会让您拥有foo.focus()
d3.select(".nv-sunburst").select("path").node().focus();