前情提要
上篇文章中,我们成功将Chrome插件从精/卵子结合成受精卵并发育成人,最后让它成功入职谷歌浏览器。
因为太弱被辞了
成功入职谷歌浏览器本应是一件令人高兴的事情,但是在工作一段时间后,他就被辞了,因为它——实在是太弱了。
全是白板属性,一个特殊技能都没有,当个路人甲都费劲,在电视剧里根本活不过第二集。可是怎么说它也是我们的孩子啊,必须要当个主角,所以我们必须提升一下它的能力,赋予它一些独有的特殊技能,让它从此走上人生巅峰,让浏览器对它欲罢不能,hiahia。(王大锤式微笑[奸笑])
获得技能——耳听八方
直接化身村口大妈信息团,浏览器的一切信息都逃不出它的耳朵,这里我们让它获取了当前网页的信息,将其中链接的参数和转码处理之后的值(方便当链接参数过多的时候找到想要的那个),加载信息(展现更多的加载信息可以用来分析当前页面的性能),当前页面链接的二维码展现出来(方便手机扫码查看)。
获取上面这些能力也很简单,只需要在popup中调用chrome.tabs.query,它就能获取到当前网页的信息了。(建议api都封装了再使用,不然很多地方都要用到,写起来就很麻烦咯~)
诶?怎么就这么点数据?加载信息呢?别急,加载信息需要在main.ts里(相当于存活在浏览器控制台的文件)通过window.performance获取当前页面的加载数据,然后通过chrome.runtime.sendMessage将信息发送给background.ts,background.ts里通过chrome.runtime.onMessage.addListener监听并接收数据,再将值挂载在window上,popup再通过chrome.extension.getBackgroundPage获取传递过来的数据,这样插件页面就拿到网页传过来的数据啦~
迷迷糊糊?用图展示数据传递方式和所用的api是不是就清晰了呢~[呲牙]
加完这个功能之后我们的孩子终于算是有点用了,不过还是太弱了,得继续加,让它学会更多的技能。
那我们继续通过chrome.extension.getBackgroundPage把web传过来的图片信息也展示出来,这样就方便搜索资源啦~
获得技能——鬼斧神工
凭借着它和浏览器的关系,我们可以让它对web为所欲为[憨笑]。
因为main.ts是存活在控制台的(忘了是啥就往上翻翻那张传递图吧~),所以它的代码也是对web直接生效,那我们就可以有很多骚操作可以做了,比如写一些鼠标效果,对web额外插入代码等。怎么舒服怎么来,让所有人舒服了才有竞争力嘛~[机智]
借助html2canvas.js插件,我们设置一个快捷键,触发后可以让它生成当前网页的画布,然后在画布上获取点击位置的颜色或者随意涂鸦。
获得神技——写轮眼
读书人的事情不叫偷,叫窃,写轮眼一开,你的就是我的(本地使用,别上传哦,不然这写轮眼得被戳瞎~)。看到有趣的功能,简单的直接自己写,复刻一下。功能复杂的,自己写不出来的,下载别人的插件,有些是没有打包,直接用源代码的,那就可以直接cv了,哪里不会抄哪里,so easy。[奸笑]
举个例子:有个用户非常广的EditCookies插件,实现起来不难,但是其中有些功能不是很好实现,那就直接下载这个插件,打开它的代码,能理解的话最好,这样就能用自己的方式实现了,理解不了那就窃吧~[偷笑](再强调一次,窃的东西自己用就好,别传播哦~)
获得属性——孝顺
作为孩子,那孝顺肯定是很重要的。多多关心父母,多和父母互动,拉近一些感情都很有必要的。[呲牙]
父母年纪大了,记性不好,那就弄个备忘录~
了解父母的作息也很重要哦~
上面这些记录的内容我们可以借助chrome.storage.sync让孩子记在它的脑子里(缓存在插件中),这样他就永远不会忘记啦~除非毁灭!(卸载)
当父母们太晚了还没休息,那就要提醒他们早点休息~
结语
到此我们的孩子已经有很大的成长了,你还记得它最初的模样吗?
它已然从一个什么都不会的废物成长为一个什么都会(不会也可以会【copy】[得意]),能力又强又孝顺的大暖男啦~
本文暂时没有评论,来添加一个吧(●'◡'●)