1.Chrome插件开发基础
开发Chrome插件很简单,只要会基本的前台技术HTML、CSS、JS就可以开发了。
Chrome插件一般包括两个HTML页面background和popup。
background页面只在启动浏览器加载插件时载入一次,它不直接显示出来而是在后台运行。
它包含了插件的主要逻辑,收集或处理的结果可以保存到全局变量localStorage中传递给popup
页面。popup页面就是点击插件图标后弹出的页面,将用户需要的数据展示出来或者与用户交互。
此外插件还应该包含有CSS和JS文件以及一些图片文件。插件的相关配置都保存到一个叫做
manifest.json的文件中,里面的配置是以JSON数据格式保存的。
本文这个天气预报插件的源代码结构如下:
myplugin
|--bg.html
|--popup.html
|--manifest.json
|--img
| |--icon.png
|--js
| |--jquery-1.7.2.min.js
|--style
|--popup.css
2.实时获得天气预报信息
首先通过http://61.4.185.48:81/g/获得城市编号。注意,这个URL返回的是一个JS脚本,
其中变量id保存的是城市编号。之后通过http://m.weather.com.cn/data/[id].html获得
城市天气预报。这个URL返回的是JSON数据格式,如下:
{
"weatherinfo":
{
"city":"北京",
"city_en":"beijing",
"date_y":"2012年5月6日",
"date":"",
"week":"星期日",
"fchh":"08",
"cityid":"101010100",
"temp1":"31℃~19℃",
"temp2":"28℃~19℃",
"temp3":"29℃~18℃",
"temp4":"27℃~18℃",
"temp5":"23℃~14℃",
"temp6":"25℃~15℃",
"weather1":"晴转多云",
"weather2":"阴",
"weather3":"多云",
"weather4":"多云",
"weather5":"多云转阴",
"weather6":"阵雨转多云",
"img1":"0",
"img2":"1",
"img3":"2",
"img4":"99",
"img5":"1",
"img6":"99",
"img7":"1",
"img8":"99",
"img9":"1",
"img10":"2",
"img11":"3",
"img12":"1",
...
}
}
我们在bg.html中定时地获得到城市的天气信息,保存到全局变量localStorage中。
之后用户点击插件按钮时就可以通过popup.html看到实时的天气情况了。
3.jQuery基础
jQuery功能很多很强大,本文例子中主要用jQuery来简化Ajax调用,如getScript和get函数,
以及parseJSON函数将JSON字符串解析成JS对象,另外就是$("#id")对DOM对象的访问。
4.代码实现
具体实现起来还要注意几点:
一是localStorage不能直接保存解析好的JSON对象,因此bg.html要将字符串保存localStorage
中,popup.html自己解析后显示到页面上。
二是要在manifest.json中将天气网站配置到permission中,才可以在bg.html中跨域访问它。
manifest.json
{
"name": "My First Extension",
"version": "1.0",
"description": "The first extension that I made",
"permissions": ["tabs", "notifications","http://m.weather.com.cn/*"],
"background_page": "bg.html",
"browser_action": {
"default_icon": "img/icon.png",
"default_popup": "popup.html"
}
}
bg.html
popup.html
popup.css
5.调试\打包\安装
关于Chrome浏览器下开发的调试:
普通页面的调试:用console.log(obj);打印任意JS对象。之后在工具->JavaScript控制台进行调试。
插件开发的调试:打开活动视图bg.html。修改后,可以点击“重新载入”重新加载我们的插件。
在Chrome浏览器中,选择工具->扩展程序->开发模式->打包扩展程序
选择插件的根目录,打包后会产生压缩安装包crx和密钥文件pem。
安装方法很简单,直接把crx文件拖到chrome浏览器窗口里就可以了。
6.最终效果图
分享到:
相关推荐
例如,“chrome插件开发杂记.htm”可能包含了开发者在实践中遇到的问题和解决方案,“Chrome拓展简明开发指南.htm”可能是一个简化的教程,而“我的第一个Chrome插件:天气预报应用.htm”则可能是一个完整的天气预报...
带GIF的小样通过显示欢迎幻灯片启动应用程序 显示默认城市及其当前天气,天气预报和紫外线指数 变化中的城市 显示警告,告诉我们openweathermap数据库中不存在城市 显示一些天气图像的例子 改变天气预报时间 显示...
在本文中,我们将探讨如何使用Node.js来实现一个简单的中国天气预报应用,主要依赖于百度提供的API。Node.js是一个基于Chrome V8引擎的JavaScript运行环境,它允许开发者使用JavaScript进行服务器端编程,使得构建...
总的来说,"chrome_tab_app-crx插件"通过整合多项实用功能,如洛伊斯资讯、天气预报、地图和新闻推荐,为Chrome用户带来了一个功能强大且个性化的浏览环境。它提升了浏览器的新标签页价值,使其不仅是一个简单的网页...
这款插件的工作原理是:当用户点击扩展图标时,它会连接到一个天气预报服务(通常是一个API接口),获取用户所在位置的实时天气数据。这些数据可能包括温度、湿度、风速以及最重要的降雨概率等。如果预报显示有雨,...
4. **界面简洁直观**:插件的设计通常注重用户体验,Weather-crx应具有清晰易读的界面,使得用户能在第一时间获取所需信息,无需复杂的操作。 5. **通知提醒**:对于极端天气或特定天气条件,插件可能提供通知提醒...
Weatherly-crx插件通过简洁的界面,让用户在浏览网页的同时,可以轻松查看当前的温度、湿度、风速等关键气象参数,以及未来几天的天气预报。这对于那些经常出行或对天气变化敏感的人来说,无疑是一大便利。 该插件...
- **示例项目**:书中可能包含了一些示例项目,例如一个简单的新闻阅读应用或天气预报应用,用以演示如何将学到的技术应用于实际场景中。 - **代码实践**:通过编写实际的代码片段来巩固所学知识,例如实现一个带有...
用户不仅可以设定背景图片,还可以添加各种小部件,如天气预报、日历、待办事项列表、书签、快速启动应用等。这些功能帮助用户在打开新标签页时快速获取信息或直接启动常用应用,减少了在网页间切换的次数。 HTML5...
5. **天气信息**:插件支持显示实时天气情况,用户可以随时查看当前或未来几天的天气预报,这对于计划出行或是需要根据天气调整日程的人来说非常实用。 6. **多语言支持**:尽管描述中提到的是英文版本,但通常扩展...
Chrome扩展程序是基于谷歌浏览器平台的第三方应用程序,它们通过添加到浏览器中以增强或修改其功能。这些扩展通常以`.crx`文件的形式分发,用户可以通过将该文件拖放到浏览器的扩展管理界面或通过Chrome Web Store...
【Zenvo ST1 New Tab & Wallpapers Collection-crx插件】是一款专为谷歌Chrome浏览器设计的增强型扩展程序,其主要目的是为用户提供一个全新的浏览体验。这款插件以其独特的Zenvo ST1超级跑车为主题,融合了高质量的...
5. **可扩展性**:由于插件的开放性,理论上可以连接到任何提供API的服务,这意味着用户可以自由添加更多面板,例如项目管理工具、新闻订阅、天气预报等,进一步定制自己的工作环境。 6. **提升生产力**:通过整合...
3. **天气预报**:集成天气小部件,让用户在打开浏览器时就能了解到最新的天气情况。 4. **待办事项列表**:添加任务列表功能,帮助用户管理工作和个人生活中的待办事项。 5. **时间/日历显示**:展示当前日期和时间...
用户无需打开天气预报网站或第三方应用,就能获取到准确及时的天气状况。这不仅包括了温度、湿度、风向风速等基本信息,还可能提供空气质量指数和未来几天的天气预报。尤其在出差、旅行或计划户外活动时,这项功能...
- **地理位置服务**:HTML5 提供了获取用户地理位置的能力,这对于地图应用、天气预报等非常有用。 ##### 4. AppCache & Database - **离线存储**:通过 Application Cache 和 IndexedDB,开发者可以让 Web 应用...
而且,插件还可能提供了其他实用功能,如快速链接常用网站、天气预报或是个人任务管理等,旨在提高用户的浏览效率。 在实际操作中,安装这款插件非常简单。只需在Chrome浏览器的扩展商店搜索"Incredible Hulk ...
【McLaren P1 New Tab & Wallpapers Collection-crx插件】是一款专为迈凯轮P1超级跑车爱好者设计的Chrome浏览器扩展程序。这款插件不仅提供了丰富的迈凯轮P1主题壁纸,还增强了浏览器的新标签页功能,旨在为用户带来...
4. **天气信息**:为了增加实用性,一些扩展可能会集成天气预报功能,让用户在打开浏览器时就能了解天气状况。 5. **待办事项/日历**:为了帮助用户组织时间,插件可能还具备简单的待办事项列表或日历视图。 6. **...
【标签】"扩展程序"表明,这是一个用于Chrome浏览器的第三方应用,它可以添加或增强浏览器的原有功能。Chrome扩展程序是用JavaScript、HTML和CSS编写的小型软件,可以与浏览器的API进行交互,实现对浏览器界面和功能...