7

在 Chrome 27 中,覆盖 Chrome 新标签页的扩展似乎无法像以前版本的 Chrome 那样将焦点从 Chrome 的多功能框上移开。

是否有一种新方法可以在新标签页中聚焦输入框,或者此功能是否已完全禁用?:(

要对此进行测试,请创建一个包含三个文件的扩展文件夹:

1.清单.json:

{
    "name": "Focus Test",
    "version": "0",
    "minimum_chrome_version": "27",
    "chrome_url_overrides": {
        "newtab": "newTab.html"
    },
    "manifest_version": 2
}

2.focus.js:

document.getElementById('foo').focus();

3.newTab.html:

<html>
    <body>
        <input id="foo" type="text" />
        <script type="text/javascript" src="focus.js"></script>
    </body>
</html>

然后,当您加载扩展程序并打开一个新选项卡时,输入字段不会集中在新选项卡页面上。

我也尝试将autofocus属性添加到该input字段,但也没有运气。扩展程序的新标签页无法将焦点从 Chrome 的多功能框上移开。

有任何想法吗?这是一个错误还是一个新的“功能”?

4

2 回答 2

5

根据 Chrome 扩展文档,

不要依赖具有键盘焦点的页面。当用户创建新标签时,地址栏总是首先获得焦点。

请参阅此处的参考:覆盖页面

于 2013-07-02T00:32:02.840 回答
0

我有一个便宜的解决方法,可以从地址栏焦点中窃取焦点。它不适合所有人。我确实确实使用了它,因为我想在我自己的自定义新标签解决方案中控制一个新标签焦点,这太糟糕了:

<script>
  alert('Use enter key to cancel this alert and then I will control your focus');

  document.getElementById('...AckerAppleIsCrafty...').focus()
</script>

用例:我构建了自己的 HTML chrome 自定义选项卡,该选项卡有一个搜索输入,可以自定义搜索我的历史记录并以我喜欢的方式添加书签。

把我的注意力集中在外面怎么样?

于 2021-01-21T15:52:31.367 回答