• Chrome插件开发 尝试1


    1.新建文件夹

    如图:整个项目的结构

    项目目录结构

    2.新建一个名为manifest.json的文件,编码模式为utf-8,(可以先建好txt文件然后再将文件后缀txt改为json)

    3.用记事本写入代码如下:(manifest.json)

     1 {
     2   "name": "Test_APP",
     3   "version": "1.0", 
     4   "manifest_version":2, 
     5   "description": "Test_APP",
     6   "browser_action":{
     7     "default_icon": "./icos/rh_16.ico",
     8     "default_popup": "popup.html"
     9   },
    10   "icons": {
    11     "16": "./icos/rh_16.ico",
    12     "32":"./icos/rh_32.ico",
    13     "48": "./icos/rh_48.ico",
    14     "128": "./icos/rh_128.ico"
    15   },
    16   "permissions": [ 
    17     "tabs",
    18     "http://*/", 
    19     "https://*/"
    20   ]
    21 }
    View Code

    注释:其中browser_action 中的dafault_icon 是自己 准备的图片(我将一张jpg到网站上转化为了几张不同大小的ico),dafault_popup是默认页面

    4. 新建一个html页面 名字叫popup.html内容如下:

     1 <html>
     2     <head>
     3         <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     4         <title>Ceshi</title>
     5         <script type="text/javascript" src="jquery-1.10.2/jquery-1.10.2.js"></script>
     6         <script type="text/javascript" src="popup.js" ></script>
     7     </head>
     8     <body>
     9      <input type="button" id="btn" value="改变百度图片测试"/>
    10     </body>
    11 </html>
    View Code

    注:其中使用到jQuery,请自行下载,如上所示 我使用jquery-1.10.2文件夹中的jquery-1.10.2.js文件

    5.新建popup.js文件,内容如下:

     1 $(function () {
     2     ///注入 执行文件
     3     chrome.windows.getCurrent(function (currentWindow) {
     4         chrome.tabs.query({ active: true, windowId: currentWindow.id },
     5             function (activeTabs) {
     6                 chrome.tabs.executeScript(activeTabs[0].id, { file: "./jquery-1.10.2/jquery-1.10.2.js", allFrames: false });
     7             });
     8     });
     9     //注入 执行文件
    10     $('#btn').click(function () {
    11         chrome.windows.getCurrent(function (currentWindow) {
    12             chrome.tabs.query({ active: true, windowId: currentWindow.id },
    13                 function (activeTabs) {
    14                     chrome.tabs.executeScript(activeTabs[0].id, { file: "./xx.js", allFrames: false });
    15                 });
    16         });
    17     });
    18 });
    View Code

    注释:此处使用jQuery语法 因为在popup.html文件中已经引用jquery文件;

    注1:其中第一条为貌似为固定写法 以为:将指定文件"注入到"当前网站,然后运行主要进去的js文件.

    注2:其中在xx.js文件是我执行的文件.其中使用到jquery语法,所以需要将jquery"注入到"当前页面

    6.新建xx.js文件(此js文件为主要执行代码),内容如下:

    1 $('#lg').html('<h1>1!2!3!4!5! 上山打老虎 </h1>');
    View Code

    注释:因为百度首页的logo使用的div的id为lg你懂得......

    7.就此代码工作完成,打开chrome浏览器,工具->扩展程序->加载正在开发的扩展程序    然后选择第一步建立的文件夹.ok.....你会看到chrome右上角多出一个app,然后转到百度首页,单击咱们的app,会发现 百度首页的logo 被替换为 .....你懂得....

    8.关于app程序打包为crx,依然是 Chrome浏览器->工具->扩展程序->打包扩展程序...剩下的 你懂得 你会得到 一个 xx.crx..然后你就可以吧这个crx给别人了...哈哈

     Chrome后台

    源码下载: http://pan.baidu.com/share/link?shareid=526440339&uk=2754452510
    

    最后感谢 :小辉辉(朱京辉)同学 的大力帮助 

    感谢 杨洋大牛 提供 中文开发 文档:http://open.chrome.360.cn/extension_dev/overview.html

     

    小菜在此敬上,欢迎大牛指点

  • 相关阅读:
    IOS开发之----协议与委托(Protocol and Delegate) 实例解析
    iOS开发-Protocol协议及委托代理(Delegate)传值
    android内置存储器memory和第三方外部存储disk管理
    余弦信号DFT频谱分析(继续)
    3.1存储管理操作系统
    android变化HOLO对话风格
    Coco2d-x android win7 Python 游戏开发环境的搭建
    ITIL该研究的结论(互联网思维的结合)
    亚马逊记AWS(Amazon Web Services)自由EC2应用
    oracle触发农产品证明文件号码
  • 原文地址:https://www.cnblogs.com/rufus-hua/p/3325125.html
Copyright © 2020-2023  润新知