【发布时间】:2011-10-17 14:05:46
【问题描述】:
我正在使用 jQuery 开发某种模式弹出窗口,但焦点存在一些问题。
现在发生的情况是,当我按下 Tab 键时,焦点转到隐藏在弹出窗口后面的控件。
有没有办法强制焦点只停留在弹出窗口中的控件上?
【问题讨论】:
-
您可以将
onblur="this.focus()"之类的内容放在弹出窗口的任何控件中,尽管这会将焦点锁定在当前选择的任何内容上。需要更多代码来确定是否应该允许任何获得焦点的内容获得焦点。 -
谢谢,但是,这对我不起作用,因为我必须遵守 WCAG 2.0 AA 准则,并且所有控件都应该可以使用键盘访问。
-
那你就自相矛盾了。 “不允许访问控件,但所有控件都必须是可访问的”。
-
我希望在打开窗口时将焦点包含在弹出窗口内。当窗口关闭时,应该可以使用键盘访问其他控件。
-
所以它是一个实际的弹出窗口,就像在一个新的浏览器窗口中一样?或者它是一个仍然包含在原始页面中的 jQuery 模式弹出窗口?
标签: javascript jquery