在门户网站中呈现组件时管理tabindex顺序

时间:2018-08-22 21:06:26

标签: javascript html reactjs react-redux tabindex

我在应用程序中使用了一些弹出菜单和类似的控件。这些菜单在逻辑上与控制它们的常规流程中的元素相关,但是菜单在DOM中的其他位置呈现。我正在使用React门户来完成此任务。 (尝试将DOM中的弹出窗口呈现在控制元素附近会非常成问题,在z-indexoverflow的情况下会遇到严重的困难。)

在某些情况下,弹出窗口或弹出窗口内的元素可以单独设置焦点。理想情况下,我希望这些元素按制表符顺序位于控制元素之后。但是,由于它们实际上是在DOM中的远处呈现的,因此这不是默认行为。

我正在寻找一种能够保持合理的Tab键顺序的解决方案。我对具体情况持灵活态度。如果可能的话,与更复杂的解决方案相比,我希望有一个更简单的解决方案,该解决方案对标准tabindex功能的干扰尽可能小。

现在,我最好的主意是保持不变,即当弹出窗口打开时,焦点应始终位于弹出窗口内部或控制元素上。如果焦点移开,则弹出窗口应关闭。这减少了我必须明确处理的焦点转换的种类。

0 个答案:

没有答案