-
Notifications
You must be signed in to change notification settings - Fork 56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chrome插件开发简介(一)——开发入门 #25
Labels
Comments
感谢分享这么详细的教程,但是文章中例子需要修改几个地方才能正常运行。
|
@TerryZwei 恩,为了示例好看,代码部分确实删减过一些。多谢指正. |
请问怎么能使用chrome.runtime 这类的API? 官网的例子没实现出来。。 |
希望能加上icon的下载地址。方便大家!! |
请问一下,如果在chrome扩展中实现以一定的时间间隔刷新页面,我通过setTimeout() 和setInternal()都只是点击那一刻可以刷新,能帮忙指点一下是否需要什么特殊的权限配置。 |
能讲一下怎么开发调试么? |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
chrome插件开发简介(一)——开发入门
这里我们来讲一下其插件开发
基础概念
主要采用JavaScript语言进行编写。
环境限制:基本上功能性操作都需要通过chrome提供的API来完成,这跟实际的页面js又有一些差异,看上去并没有那么的完全自由。
如chrome扩展的页面脚本,可以获取并操作页面dom,但是,出于安全性的考虑,页面脚本的域是独立区分开来的,即js成员变量不共享。
即:插入到用户页面的js脚本可执行,但是与原始脚本不同执行域,互相不会影响。
content_script不能使用除了chrome.extension之外的chrome.* 的接口,不能访问它所在扩展中定义的函数和变量,不能访问web页面或其它content script中定义的函数和变量,不能做cross-site XMLHttpRequests
chrome扩展,其功能受限于chrome的API,比如说文件系统,必须通过chrome的fileSystem接口,而这些接口仅仅只是对html5已有的文件系统接口的扩展,
它允许Chrome应用读写硬盘中用户选择的任意位置,而HTML5本身提供的文件系统接口则只能在沙箱中读写文件,并不能获取用户磁盘中真正的目录。
其他,一些潜在的会引起漏洞的操作,或者说不建议的操作,会被禁止掉。
比如,想要通过用js代码主动唤起打开devtools面板,这个是不允许的。
https://bugs.chromium.org/p/chromium/issues/detail?id=112277
可以看到回复:
举个栗子:apple:
1.编辑扩展程序所需要的主要文件夹
文件结构说明
page_action,browser_action类型的扩展对应位置
2.打包生成插件包
浏览器打开 chrome://extensions/(或者‘更过工具->扩展程序’),左上角有一个
打包扩展程序
按钮然后,将生成的*.crx文件拖到浏览器即可完成安装。
The text was updated successfully, but these errors were encountered: