将焦点交给浏览器

2024-01-17

我正在研究键盘辅助功能。我有一个位于页面内的 Flash 对象,为了防止焦点被困在其中,我添加了可以进行对话的选项卡侦听器ExternalInterface一些 JavaScript 函数。

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

因此我的问题是:是否可以以编程方式将焦点集中到浏览器的镶边?如果我能模仿两个前锋就更好了and向后制表符。另外,如果可能的话,我想避免在闪存之前/之后添加额外的可选项组件,除非我可以使它们对鼠标都有效地不可见and键盘。


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

var activeElement = document.activeElement;
if (activeElement) {
   activeElement.blur();
} else if (document.parentElement) {
   document.parentElement.focus();
} else {
   window.focus();
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将焦点交给浏览器 的相关文章

  • 使用 Node.js 构建网站的最佳实践

    这个问题的答案是社区努力 help privileges edit community wiki 编辑现有答案以改进这篇文章 目前不接受新的答案或互动 我想知道如何使用 Node js 从头开始 开发一个网站 我明白我怎么能possibly
  • 如何使用 Playwright 使用选择器查找框架 (iframe)

    我有一个小问题 无法找到使用 Microsoft Playwright 框架的答案 根据您可以使用以下代码获取 iframe const frame page frame frame login 但是如何使用选择器来查找 iframe 并与
  • 如何在React Native Android中获取响应头?

    您好 我想在获取 POST 请求后获取响应标头 我尝试调试看看里面有什么response with console log response 我可以从以下位置获取响应机构responseData但我不知道如何获取标题 我想同时获得标题和正文
  • IntersectionObserver是否支持水平滚动观察?

    我制作了几个垂直滚动 IntersectionObserver 模块 但我对水平滚动感兴趣 根将是 div 观察目标将是 img 我想观察当 img 放大但 div 保持视口宽度时的变化 我什至不确定移动 Safari 是否会将缩放后的图片
  • 为什么 setTimeout 在 Chrome 中触发两次,而在 IE 或 Firefox 中则不然?

    有人能告诉我为什么 javascript 函数 生成新号码 在 Chrome 中触发两次 但在 IE 或 Firefox 中则不会 使用 Chrome 20 0 1132 57 IE9 和 Firefox 13
  • React autoFocus 将光标设置为输入值的开头

    我有一个受控输入 最初显示一个值 我已将该输入设置为自动聚焦 但当我希望它出现在末尾时 光标出现在输入的开头 我知道这可能是因为自动对焦是在值之前添加的 但我不能 100 确定 在输入字段末尾完成光标初始化的最佳方法是什么 var Test
  • JavaScript 中的 Promise 有什么意义?

    一个承诺是一个 可能现在可用 或将来可用 或永远不可用的值 来源 MDN 假设我有一个想要处理图片的应用程序 图片已加载 例如在算法在后台使用它之后 或某种其他类型的延迟 现在我想检查一下图片是否可以在future 通过使用承诺 而不是回调
  • JavaScript推送函数中的动态变量

    我在 JavaScript 中使用推送功能 var chartData for var i 0 i lt 3 i chartData push date new Date year s mon s date s hr s min s sec
  • 如何使用角度材料在具有可扩展行的表格中创建嵌套垫表

    我有以下数据 id c9d5ab1a subdomain wing domain aircraft part id c9d5ab1a info mimetype application json info dependent parent
  • onclick 事件中未调用函数

    我想在每个 YouTube 链接的末尾添加一些 HTML 以在 litebox 中打开播放器 到目前为止 这是我的代码 document ready function var valid url new RegExp youtube com
  • 将 Firebase 云消息传递与 Windows 应用程序结合使用

    我在 Android 和 iOS 应用程序中使用 Firebase Cloud Messaging 但是我还有此应用程序的 Windows Mac OS 版本 我想保留相同的逻辑 我知道 Firebase Cloud Messaging 可
  • mongodb 聚合 - 累积字段的不同组值

    如果我有Player表格文件 name String score Int 我有Group文档 其中组代表玩家列表 groupName String players ObjectID 玩家可以属于多个组 我想做一个聚合Player文档 按以下
  • 用于选择特定 div 中具有特定类的锚元素的 jQuery 选择器是什么

    我有一些这样的代码 我想选择每个 a 带有类的标签status在 div 中foo div a class status a div 你可以这样做 foo find status a
  • Google Maps API (v3) 添加/更新标记

    编辑 它现在可以工作 但如果用户不允许或没有基于位置的服务 则不会加载 请参阅 jsfiddle 示例接受的答案评论 我已经浏览了一些教程和问题 但我无法安静地理解正在发生的事情 或者在这种情况下 没有发生 当用户单击链接时 我正在加载地图
  • 使用javascript动态更新css内容

    需要将 css 更新为动态值 我不确定最好的方法是什么 div style zoom 1 div 缩放级别将根据窗口大小调整触发 应用程序将相应缩放 我将此应用程序加载到 cordova 中并让它在 iPAD 中运行 然后我意识到需要使用
  • 主页(网格)上的缩略图现在显得模糊。如何纠正?

    我不知道这看起来是否愚蠢 但从早上开始我就无法纠正这个突然出现在我的博客网站上的错误www candidopinions in http www candidopinions in 我有一个网格视图模板 其中博客文章中的特色图像作为调整大小
  • 使用 Enzyme 测试 `React.createRef` api

    我想测试下面的类 它使用React createRef api 不过 快速搜索并没有发现任何这样做的例子 有人成功过吗 我该如何嘲笑裁判 理想情况下我想使用shallow class Main extends React Component
  • Flot 库将 y 轴设置为最小值 0 和最大值 24

    如何将 y 轴设置在 0 到 24 的范围内 这是我的代码 j plot j placeholder d1 xaxis mode time min new Date 2010 11 01 getTime max new Date 2011
  • 仅当显式选择行时才关闭 ui-bootstrap typeahead

    我创建了这个jsBin http jsbin com livuqafe 2 edit来证明我遇到的问题 如果您转到此处 请尝试输入 五 并继续 你的自然反应是输入 五 然后按 Tab 如果你想要 五百 你可以向下箭头一次 但是 在这种情况下
  • 如何通过索引访问 JSON 对象中的字段

    我知道这不是最好的方法 但我别无选择 我必须通过索引访问 JSONObject 中的项目 访问对象的标准方法是只写this objectName or this objectName 我还找到了一种获取 json 对象内所有字段的方法 fo

随机推荐

  • 如何重新启动应用程序(React Native 和 Expo)

    我使用 expo 所以我无法访问 android 文件夹 我想第一次重新启动我的应用程序 我怎样才能做到这一点 I use 反应本机重启 https github com avishayil react native restart 但不起
  • 范围规则如何与类一起使用?

    考虑以下 python 代码片段 x 1 class Foo x 2 def foo x 3 class Foo print x prints 3 Foo foo 正如预期的那样 这会打印 3 但是 如果我们在上面的代码片段中添加一行 行为
  • ARM TrustZone 开发

    我想知道是否有人有关于可以使用 ARM TrustZone 的开发板的信息 我有 BeagleBoard XM 它使用 TI 的 OMAP3530 和支持信任区的 Cortex A8 处理器 但是 TI 确认他们已禁用板上的功能 因为它是通
  • 由内而外构建管道代理

    是否可以创建一个函数 以便Proxy from pipes http hackage haskell org package pipes可以从里到外建造吗 由内而外 我的意思是从连接上游和下游连接的函数创建一个代理 最理想 但不可能 的签名
  • 创建适配器以用对象填充 Spinner [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有一个 Android 应用程序Spinner并想用我自己的对象动态填充它 这些对象确实已经存在List
  • 如何在python中导入sikuli模块?

    我在使 sikuli python 单元测试正常工作时遇到问题 并且很高兴获得一些帮助 我在互联网上进行了广泛的搜索 但没有任何有效的方法 我的Python知识非常有限 我想这没有帮助 我用的是win7 32位 西库里 1 0 rc3 r9
  • 通过 MailChimp API v2.0 将用户添加到兴趣组

    我想通过 MailChimp API 将订阅者添加到兴趣组 这是我的 merge vars array merge vars array GROUPINGS gt array 0 gt array id gt 17385 The group
  • 如何覆盖编辑器服务

    我正在尝试采用自定义方式来实现转到定义 这需要覆盖编辑器服务 尤其是openEditor and findModel 方法 据我所见 我尝试遵循此评论 https github com microsoft monaco editor iss
  • 我不想显示来自 ParsleyJS 的错误消息

    我正在使用 ParsleyJS 库来验证我的表单 但如果字段无效 我只想应用错误类 但不想显示错误消息 如果我使用该房产data show errors false 那么类或错误都不会显示 我用的是这个方法display none在CSS中
  • 如果没有 global.asax,ASP.NET 网页的路由如何工作

    安装了 ASP Net 4 0 的 Web 服务器 部署了 Web Pages 2 0 DLL bin 用 cshtml razor 编写的页面 但路由不起作用 当仅使用网页而不是完整的 MVC 我在 global asax 中定义路由 时
  • 动态选项对话框(使用反射)

    有谁知道一个好的组件 C WinForms 它允许创建一个选项 设置 表单 给定一个带有一堆属性的自定义类 我并不是在寻找闪亮的东西 而是仅仅比属性网格更好的东西 我可以轻松处理视觉部分 但我只是不想浪费时间进行反射来添加和绑定控件 如果它
  • 用于选择所有输入类型的 SCSS/CSS 选择器

    我有一些输入类型有这个 scss 设置 来自框架 textarea input type text input type password input type datetime input type date input type mon
  • Hive INSERT OVERWRITE DIRECTORY 命令输出不由分隔符分隔。为什么?

    我正在加载的文件由 空格 分隔 下面是文件 该文件驻留在 HDFS 中 001 000 001 000 002 001 003 002 004 003 005 004 006 005 007 006 008 007 099 007 1 gt
  • python中的逐元素张量乘法

    我正在尝试使用 python 解决计算代数中的问题 基本上给出了两组 比如说A a b and B e 我需要逐个元素地计算张量积并得到最终的集合C a tensor e b tensor e 含有这些元素的产物 我可以使用带有数字的数组进
  • 如何在gitlab ci中引用作业规则中的变量?

    我需要在 gitlab ci 作业规则中重用变量 include template Workflows Branch Pipelines gitlab ci yml staging variables variables CONFIG NA
  • 为什么 Vite 会创建两个 TypeScript 配置文件:tsconfig.json 和 tsconfig.node.json?

    我正在使用Vite来创建一个新的 React TypeScript 项目 https vitejs dev guide scaffolding your first vite project 创建项目后 根文件夹中有两个 TypeScrip
  • 将字典转换为 url 参数字符串?

    有没有办法将代码中的字典转换为url参数字符串 e g An example list of parameters Dictionary
  • Xcode 8 要求注册设备以创建配置文件

    我正在尝试发布一个应用程序进行测试 而无需在我的 Mac 中连接设备 我创建了一个开发者帐户 在 itunes 中创建了一个应用程序 生成了捆绑包 ID 使用开发者帐户登录到 xcode 生成了经销商证书 当我尝试存档应用程序时 出现错误
  • @ViewBag 在当前上下文中不存在

    我知道网上已经有一些解决方案 但在尝试了所有解决方案后 我对自己感到困惑 我只是想澄清我尝试过的解决方案 确保Microsoft AspNet Web Optimization or System Web Optimization有没有 我
  • 将焦点交给浏览器

    我正在研究键盘辅助功能 我有一个位于页面内的 Flash 对象 为了防止焦点被困在其中 我添加了可以进行对话的选项卡侦听器ExternalInterface一些 JavaScript 函数 JavaScript 会查找下一个可用元素tabI