通过 webview 动态调整应用 window(边界)
Dynamic resizing of app window (bounds) via webview
我构建了简单的桌面应用程序,它正在将内容加载到 webview 元素中。
现在我正在寻找一些选项来调整应用程序 window 的大小,这些选项基于在 webview 中从 DOM 调用的某些 Javascript 操作。
例如:
默认情况下,我会在桌面上显示与使用此 Chrome 应用程序的团队相关的一些信息。这些数据是从我们使用 HTML/CSS/jQuery 呈现的服务器上的 PHP 应用程序 运行 中获取的。
现在我想呈现一些表单,这将为我们提供直接在 Chrome 应用程序中编辑此内容并将它们存储在数据库中的选项,但问题是,默认情况下 Chrome 应用程序非常小:约200x300px,目前,当我呈现此表单时,我需要将整个应用程序的大小调整为大约。 300x500px,我不知道如何实现。
我正在浏览 Chrome 应用程序文档,在那里我找到了一些与 app.window 相关的信息,但我没有找到方法,如何将其应用到现实世界的应用程序中并执行这样的通过 Javascript 在 webview 元素中的命令。
感谢您的任何想法和建议。
您将无法从网络视图中执行此操作。你是对的 chrome.app.window
是必需的 API,但是嵌入 webview 的页面没有调用它的权限。
您需要 , which has the necessary privileges. I would actually recommend using the "externally_connectable"
method 因为它是针对特定站点的。
将消息传递到应用程序页面的脚本后,您可以使用
调整 window 的大小
chrome.app.window.current().innerBounds.setSize(width, height)
或者,如果是事件页面中的侦听器,
chrome.app.window.get(windowId).innerBounds.setSize(width, height)
请注意,您可以在创建 window 时设置初始大小。
我构建了简单的桌面应用程序,它正在将内容加载到 webview 元素中。
现在我正在寻找一些选项来调整应用程序 window 的大小,这些选项基于在 webview 中从 DOM 调用的某些 Javascript 操作。
例如: 默认情况下,我会在桌面上显示与使用此 Chrome 应用程序的团队相关的一些信息。这些数据是从我们使用 HTML/CSS/jQuery 呈现的服务器上的 PHP 应用程序 运行 中获取的。 现在我想呈现一些表单,这将为我们提供直接在 Chrome 应用程序中编辑此内容并将它们存储在数据库中的选项,但问题是,默认情况下 Chrome 应用程序非常小:约200x300px,目前,当我呈现此表单时,我需要将整个应用程序的大小调整为大约。 300x500px,我不知道如何实现。
我正在浏览 Chrome 应用程序文档,在那里我找到了一些与 app.window 相关的信息,但我没有找到方法,如何将其应用到现实世界的应用程序中并执行这样的通过 Javascript 在 webview 元素中的命令。
感谢您的任何想法和建议。
您将无法从网络视图中执行此操作。你是对的 chrome.app.window
是必需的 API,但是嵌入 webview 的页面没有调用它的权限。
您需要 "externally_connectable"
method 因为它是针对特定站点的。
将消息传递到应用程序页面的脚本后,您可以使用
调整 window 的大小chrome.app.window.current().innerBounds.setSize(width, height)
或者,如果是事件页面中的侦听器,
chrome.app.window.get(windowId).innerBounds.setSize(width, height)
请注意,您可以在创建 window 时设置初始大小。