javascript - 如何判断网页是否以chrome应用程序快捷方式运行

标签 javascript html google-chrome

我们可以在谷歌浏览器中创建应用程序快捷方式。 当我的网页在应用程序快捷方式模式下运行时,我想显示不同的布局 - 它基本上在单独的独立窗口中运行。

有没有办法判断网页是否在应用程序快捷模式下运行?

现在我正在测试窗口是否可以通过 JavaScript 调整大小 - 如果窗口可以调整大小,假设它正在应用程序快捷方式模式下运行。

我想知道是否有更好的方法来做到这一点。

[更新] 基本上我们想知道网页是在单个窗口中运行还是在窗口的一个选项卡中运行。

最佳答案

我刚刚用谷歌搜索了一下,找到了这个网站:http://blog.kenneth.io/blog/2010/05/04/desktop-icons-in-google-chrome/

可以看到这个<meta>第一个代码块中的元素:

<meta name="application-url" content="http://www.example.com"/>

我还没有找到任何可靠的官方文档*,但它似乎在我刚刚进行的快速测试中有效。

这样,您可以将一个额外的查询字符串传递给您的 URI,该字符串仅在从固定的(任务栏|桌面)快捷方式打开时被调用。

*) 此 <meta> 元素也在此处非正式提及:Page Meta Properties - mozilla f1 .



如何使用?

  • 创建一个新的 HTML 文档:

<html>
  <head>
    <meta charset="utf-8" />
    <meta name="application-url" content="http://www.exaple.com?shortcut=true" />

    <title>Test</title>
  </head>

  <body>
    Test
  </body>
</html>
  • 现在,在谷歌浏览器中打开此文档(也适用于本地文件系统!)。
  • 通过 Chrome 的工具菜单创建任务栏和/或桌面快捷方式。
  • Chrome 将使用原始 URI 打开另一个窗口。这可能是一个错误。
    但是,如果您使用快捷方式,Chrome 将打开 <meta> 标记中提供的 URI(此处:http://www.exaple.com?shortcut=true)。

关于javascript - 如何判断网页是否以chrome应用程序快捷方式运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16947226/

相关文章:

javascript - 如何使用 'this.pros.function'调用组件上下文中运行的函数?

当数组的一项未定义时,javascript循环结束

java - 我可以将 GWT 与手写的 HTML 和 CSS 一起使用吗?

html - 输入 :hover + label not working in Chrome

javascript - 根据数组中的键连接并删除一些 json 元素

javascript - React Action 请求和 Redux 结构

google-chrome - 哪些浏览器支持“缓存控制:不可变”?

javascript - 为什么事件冒泡在分离的 DOM 元素中不起作用?

javascript - 在元素下方对齐一个 div 并水平居中

python - 如何使用 django-crispy-forms 制作 Bootstrap 文件浏览按钮