— Designsor

Archive
Tag "chrome扩展入门"

先上图吧~

扩展地址:
https://chrome.google.com/extensions/detail/bpnpaekhdjhmgodlllkkkohgbgadgjdl

如果你总是迷路,或者总是外出,我觉得你挺应该装一个的。。。 (其实主要还是我自己使用方便,上面的功能基本都是给自己定制的……)

支持:
1,你的IP地址定位。(腾讯api)
2,当日,次日天气预报(google weather api)
3,你的城市所在地定位(maxmind api)
4,你当前地理位置的定位—目前来说有点不太准……(google map api)
5,查询你想到的任何地方的地图查询(google map api)
6,查询你国内目前的火车票票价与车次。(trainInfo api)
7,查询手机归属地等手机卡信息。(shouji.com的api)

————————————————–可能以后扩展的功能—————————-

可能以后会做支持查询飞机票的……虽然组里有人说比较难实现了,没有API,只有爬虫抓了。

以后非常可能而且可能明天就会做的其他地区城市的天气预报查询。

暂时想到这么多,其实还想再连接一个淘宝的JavaScript api做本地网店实体店一览之类的功能。。。

具体想到这么多。BUG还比较多,源代码也比较乱,编程风格也比较肥猪流,以后慢慢修改……

Read More

好吧,还是应了史努比的,扩展好了……其实我丫就是plug多了……

看下截图吧,很简单的一个小应用,还没完全做好,但是有了小雏形,激动是当然的了。

哈,找了个最简单的例子,IP地址查询,城市所在地查询,当日天气查询,嗯,简单的一个小扩展。主要是想了解下chrome的插件机制,虽然制作这个小例子根本没用到它里面的很多功能,而且很多功能我也还没有去学,只用了大概一下午的时候,就制作出了个扩展,可想而知chrome的扩展是多么容易上手啊。以后肯定会火。

这个截图是我本地的扩展安装截图,我还想把未来5天或者最少也要把第2天的天气加进去,还有手机号所在地查询功能,火车票飞机票查询加进去再发布出来吧。所以安装地址就不给了。

我学习的文档地址分享下:

http://code.google.com/chrome/extensions/docs.html

然后简单说下我用到的代码和具体的一些chrome插件上手方面的知识。因为在我看文档的时候也没发现太多讲的很明白的教程,其实真的不难,仔细看文档都有说明。

chrome插件的文件结构:必须要有一个manifest.json文件。官方格式如下:

{
// Required
“name”: “My Extension”,
“version”: “versionString”,

// Recommended
“description”: “A plain text description”,
“icons”: { … },
“default_locale”: “en”,

// Pick one (or none)
“browser_action”: {…},
“page_action”: {…},
“theme”: {…},

// Add any of these that you need
“background_page”: “aFile.html”,
“chrome_url_overrides”: {…},
“content_scripts”: [...],
“minimum_chrome_version”: “versionString”,
“options_page”: “aFile.html”,
“permissions”: [...],
“plugins”: [...],
“update_url”: “http://path/to/updateInfo.xml”
}

具体的参数说明可见API文档:http://code.google.com/chrome/extensions/manifest.html

根据这个类似json格式一样的配置文件chrome会载入你的扩展程序,然后具体到我使用的页面主要有popup.html还有background.html俩个页面,一个是点击扩展图标的弹出页面,一个就是从扩展开始就一直后台运行的主程序页面。

回过头来看下我制作的几个功能,IP,地址,天气,肯定是访问了外部的API或者数据了。噢,忘记说了chrome的扩展是完全由css html javascript来制作的噢。而且ajax没有跨域限制,只要你设置了相应的配置就OK。很棒。

具体思路就是扩展访问外部api然后处理结果,返回给popup页面展示给用户,OVER。

具体的到刚才截图的主要代码亮一下,写的不太好,主要是卡在了编码正则那一块,后来统一了所有页面的编码就OK了。嗯,都需要是utf-8的……

popup.html页面代码,background.html页面代码

只用到了个localStorage类似全局变量对象的一个东西,就实现了。基本是2个页面数据互相交互的桥梁,然后是一个监听函数监听数据是否完成加载和处理,如果成功则返回给popup页面即可。

具体代码可以看下,注释没怎么写,因为真的是很简单。。。

嗯,继续做,加功能,V。第一次chrome插件制作经验分享……

最后的PS:chrome里的HTML5 CSS3支持的都非常好,可以尝试使用噢~比如HTML5的websql或者HTML5新加的那几个媒体标签,再或者绘图标签和CSS3动画特效,都是可以完全应用进去的哈……:)好玩。

Read More