gpt4 book ai didi

javascript - 将焦点放在浏览器上

转载 作者:行者123 更新时间:2023-11-29 14:57:14 26 4
gpt4 key购买 nike

我正在研究键盘可访问性。我有一个位于页面内的 flash 对象,为了阻止焦点被困在其中,我添加了通过 ExternalInterface 对话的选项卡监听器到一些 JavaScript 函数。

JavaScript 使用 tabIndex 查找下一个可用元素并调用focus()在上面。到目前为止,一切都很好。但是,如果插件是页面上最后一个可选项卡(或反向选项卡时第一个),则没有可切换到的元素。通常这会将焦点设置在浏览器窗口上,所以我想保持这种行为。

因此我的问题是:是否可以以编程方式将焦点放在浏览器的 chrome 上?如果我可以同时模仿前后制表符,那就更好了。如果可能的话,我还想避免在 flash 之前/之后添加额外的 tabbable 组件,除非我可以使它们对鼠标和键盘都有效地不可见。

最佳答案

在我自己寻找类似答案时遇到了这个问题。如果要释放当前焦点元素上的焦点,请使用 document.activeElement;如果您希望在不支持的情况下进行回退,请使用焦点在文档的父元素上。据我所知,这应该支持所有已知的浏览器:

var activeElement = document.activeElement;
if (activeElement) {
activeElement.blur();
} else if (document.parentElement) {
document.parentElement.focus();
} else {
window.focus();
}

关于javascript - 将焦点放在浏览器上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15842139/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com