转载链接:http://blog.csdn.net/qustdong/article/details/46046553

chrome插件开发资料还是相对丰富的

360官方提供的资料:http://open.chrome.360.cn/extension_dev/overview.html

某大神也讲解的比较详细: http://www.cnblogs.com/guogangj/p/3235703.html

有坑的地方要注意:popup.html中的js在插件中无效,需要通过引用popup.js,动态绑定js事件

先摘录相关的内容:

程序开发,必定要涉及到调试,记得我刚开始做WEB开发前,问一些做了好久WEB开发的朋友,你们是怎样做JavaScript调试的,我发觉大多数人竟然回答:用alert一点点试吧——不是不行,是太原始,太低效了,对吧?其实Chrome直接支持javascript的调试,拥有了Chrome,就相当于拥有了一个强大的javascript调试器了。

Chrome打开开发者工具的方法是<Ctrl>+<Shift>+<I>(Windows版),大致如下:

我们这次需要关心的有“Elements”、“Sources”和“Console”这三个标签。Elements是用来做DOM分析的,功能有点类似Firebug,帮助我们分析页面的内容;而Sources,是我们用来调试javascript的;Console则是我们的Log的输出窗口,也是一个调试利器。

调试Content Script

如我提供的这个例子,可在Sources的“Copntent Scripts”下看到“content_script.js”然后设断点,执行到断点处时,Chrome会挺住,你可以观察到上面的值,如图:

太cool了,请问你还要一点点alert吗?

调试Background

由于background和content script并不在同一个运行环境中,因此上面的方法是看不到Background的javascript的。要调试Background,还需要打开插件页,也就是“chrome://extensions”。点对应的插件的“generated background page.html”,就出现了调试窗口,接下来的操作就跟前面的类似了。如图:

至于你看到ID,“aajnhhjiia……”这一长串东西,这是chrome自动安排的一个ID。

调试Popup

虽然Popup和Background是处于同一运行环境中,但在刚才的Background的调试窗口中是看不到Popup的代码的。调试Popup还需要这样:

然后……就跟前面差不多了。

一些问题

也许有时候你会发觉调试器不是很灵,至少我用下来感觉如此,比如你可能发现断点设不了,或者断点不起作用,或者看不到你自己的javascript文件。我的方法是在插件页中,把对应的插件的“已启用”这个复选框去掉,再重新勾上,然后再点一下“重新加载(Ctrl+R)”,通常能解决问题。当然了,还有些很古怪的问题,还不好重现,总体的解决思路就是重新载入一下,实在不行的话重启浏览器,或者清除浏览器缓存什么的,再试试看。

在做插件调试的时候我还遇到一个十分郁闷的问题,那就是我的Chrome使用了“Go Agent”,关于Go Agent是用来干嘛的,这个嘛,可以去google一下,我相信绝大多数程序员都会喜欢上它……可由于使用了这个东西,很可能会导致插件的XMLHttpRequest工作不正常,而且可能你会思索半天也找不到原因,好吧,暂时把Go Agent停用掉,甚至可能你需要重启下Chrome——我的经验。

chrome插件开发之调试相关推荐

  1. 十分钟带你入门Chrome插件开发

    一.简述 我们所说的chrome插件一般都是指chrome扩展程序(Chrome Extension).chrome插件是一个用Web技术开发.用来增强浏览器功能的软件,它其实就是一个由HTML.CS ...

  2. vue.js 初体验— Chrome 插件开发实录

    欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 作者:陈纬杰 背景 对于经常和动画开发打交道的开发者对于Animate.css这个动画库不会陌生,它把一些常见 ...

  3. Chrome插件开发-右键菜单开启页面编辑

    开发一个执行js脚本改变页面DOM的Chrome插件,manifest_version版本为3. Chrome插件基本知识 Chrome插件通常由以下几部分组成: manifest.json 该文件为 ...

  4. Chrome插件开发--后台监控网页并自动刷新,点击页面元素

    2015年6.17号,在线旅游网站蚂蜂窝出现了抢粽子活动:页面会出现一些粽子,点击粽子,即抢到.很明显,这是一个重复性的劳动,可以代码自动刷新页面,点击页面上的粽子. 本方案中选择了开发一款Chrom ...

  5. 浙大教务网登录验证码自动填充--chrome插件开发

    浙大教务网登录验证码自动填充--chrome插件开发 一.前言 二.验证码图像识别 三.chrome插件开发 四.插件使用和结果展示 五.未来展望 六.提示 一.前言 女朋友说"教务网每次登 ...

  6. Chrome插件开发实例---刷论坛在线时间小程序

    前记: 由于近日注册了某个技术论坛,其论坛要求转为正式会员必须50积分购买邀请号,回答官方预留的题目可以获得30积分,每日在线一小时可以获得1积分上限为5积分.本人回答了官方题目获得30积分,之后就只 ...

  7. 【Chrome插件开发】ReRes和request-interceptor源码赏析+复现+插件开发完整解决方案

    文章目录 引言 亮点 Chrome插件ReRes源码赏析 Chrome插件request-interceptor background.js源码赏析 技术选型 配置stylelint vscode配置 ...

  8. chrome插件开发(转)

    作者原文:https://www.cnblogs.com/liuxianan/p/chrome-plugin-develop.html 写在前面 我花了将近一个多月的时间断断续续写下这篇博文,并精心写 ...

  9. chrome 插件开发各种功能demo_Chrome 插件开发全攻略

    Chrome 浏览器相信大家都用得比较多,有很多的优点,比如简洁.强大的开发者工具等,但是更让大家映像深刻的是有各种各样有趣.有用的插件,今天要给大家推荐的开源项目是 Chrome 插件开发全攻略,你 ...

  10. chrome插件开发记录(1)——解决问题“清单文件缺失或不可读”

    chrome插件开发记录(1)--解决问题"清单文件缺失或不可读" 参考文章: (1)chrome插件开发记录(1)--解决问题"清单文件缺失或不可读" (2) ...

最新文章

  1. 零基础学Java程序有什么好的建议
  2. web.config配置
  3. MyBatis 源码分析系列文章导读
  4. 机器人从计算机应用领域看,人的素质差异,本质地不在于他们即存知识信息量的差异,而在于他们思维能力的差异。( )...
  5. Linux 常用命令:文本查看篇
  6. 迅雷的声音:摆脱视频产业的经济化困境
  7. diy机器人图片 手绘纸箱_废物利用,她用几个纸箱让家里变成动物园,孩子回家乐坏了!收藏...
  8. 以算法重构视频技术前沿,超分辨率算法那些事
  9. Swing编程基础 之三
  10. kettle升级jetty10实验(未完成jaas认证)
  11. Http请求返回结果报UnsupportedCharsetException
  12. 富士相机设置传原图_更稳更快更小巧 富士轻旗舰X-S10无反相机评测
  13. 摄影测量前方交会编程实现
  14. 吉时利DMM6500数字万用表,更高的生产测试量和更低的测试成本
  15. 微信内打开的H5页二次分享成卡片模式
  16. Windows编程 从消息窗口到基本窗口 游戏循环窗口框架的简单实现
  17. MySQLdb._exceptions.OperationalError: (1045, “Access denied for user ‘root‘@‘localhost‘ (using passw
  18. collectingAndThen​
  19. 普通话计算机等级用英语怎么说,普通话用英语怎么说
  20. VC6无负担实现XP风格界面

热门文章

  1. android内录音软件,安卓内录声音软件(能内录音频的手机软件)
  2. FFmpeg 视频裁剪
  3. 通过QQ 2012 客户端协议获取clientkey的0x91数据包分析
  4. 飞鸽传书linux运行,Linux下飞鸽传书实现
  5. HttpClient4.X发送Get请求的url参数拼接
  6. PreparedStatement 大数据查询
  7. android 自定义曲线图,Android自定义View——贝赛尔曲线
  8. iOS面试题系列之常见算法
  9. win10系统下JDK环境变量配置失败的原因
  10. struts2框架入门(基于maven)