Gat*_*ler 29 javascript google-chrome web-applications google-chrome-extension
简介
Google Chrome具有一项功能,允许您创建网页快捷方式,使其看起来像传统的桌面应用程序.
例如,推特移动设备的快捷方式可能是
C:\Users\<username>\AppData\Local\Google\Chrome\Application\chrome.exe --app=https://mobile.twitter.com/
Run Code Online (Sandbox Code Playgroud)
此应用程序的文件图标存储在
C:\Users\<username>\AppData\Local\Google\Chrome\User Data\Default\Web Applications\mobile.twitter.com\https_80
Run Code Online (Sandbox Code Playgroud)
我的问题
自从我使用此功能以来已经有一段时间了,我似乎记得您可以将自己的JavaScript文件添加到app文件夹中,该文件夹在加载应用程序时包含在内.但是,我找不到任何讨论此功能的文档,但我99%确定它存在.
如果此功能可用以及我需要创建哪些文件,是否有人有任何详细信息?
澄清
我基本上是使用Chrome的"应用程序快捷方式"打开一个网页,我希望这个网页每隔x秒刷新一次.但是,我无法控制此网页.
我确信在旧版本的Chrome中,这曾经是可能的......除非我生气.
Rob*_*b W 87
Chrome在应用模式下启动时,也会加载Chrome扩展程序及其内容脚本.
因此,您可以创建一个简单的扩展,在页面中注入JavaScript代码,如下所示:
manifest.json文件:{
"name": "Run code on twitter mobile",
"version": "1.0",
"manifest_version": 2,
"content_scripts": [{
"js": ["contentscript.js"],
"matches": ["http://mobile.twitter.com/*"]
}],
"web_accessible_resources": ["script.js"]
}
Run Code Online (Sandbox Code Playgroud)
然后,创建一个名为的文件contentscript.js,并添加所需的JavaScript代码.
此脚本包含在匹配页面的每个负载中.通过document对象的所有DOM方法都是直接可用的.然而,window和document.defaultView你没有指向window的页面对象[来源].
如果要访问全局方法或属性,则必须动态创建<script>并在页面中将其注入(请参阅构建Chrome扩展 - 使用内容脚本在页面中注入代码).
contentscript.js
var s = document.createElement('script');
s.src = chrome.extension.getURL('script.js');
(document.head||document.documentElement).appendChild(s);
s.onload = function() {
s.parentNode.removeChild(s);
};
Run Code Online (Sandbox Code Playgroud)
然后,创建一个名为的文件script.js,并将其放在与manifest.json和相同的文件夹中contentscript.js.代码script.js执行就像它是受影响页面的真实部分一样.
此处提供了内容脚本的参考.
| 归档时间: |
|
| 查看次数: |
21203 次 |
| 最近记录: |