我的第一个Chrome插件:天气预报应用

"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",
...
}
}
"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"
}
}
- <html>
- <head>
- <meta charset="UTF-8">
- <title>weather</title>
- <script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
- <script type="text/javascript">
- function init() {
- //$id = "101070201";//此处是大连的城市ID,可以去weather.com.cn找到对应的weather city ID
- //$url = "http://m.weather.com.cn/data/" + $id + ".html";//接口URL
- // 利用下载服务器端脚本来间接解决跨域访问问题
- $.getScript(
- 'http://61.4.185.48:81/g/',
- function(){
- $.get("http://m.weather.com.cn/data/" + id + ".html",
- function(data) {
- window.localStorage.weather = data;
- }
- );
- }
- );
- }
- window.setInterval("init()", 5*60*1000);
- </script>
- </head>
- <body>
- </body>
- </html>
- <html>
- <head>
- <meta charset="GB2312">
- <title>weather</title>
- <link rel="stylesheet" type="text/css" href="style/popup.css"/>
- <script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
- <script type="text/javascript">
- function init() {
- var data = $.parseJSON(localStorage.weather);
- var weatherinfo = data["weatherinfo"];
- var datearray = ["", weatherinfo["date_y"], "第二天", "第三天", "第四天", "第五天", "第六天"];
- $("#cityname").html(weatherinfo["city"] + "城市天气预报");
- for (i = 1; i <= 6; i++) {
- var divid = "#div" + i;
- $(divid).append(datearray[i]).append("<br>");
- var imgurl = "http://m.weather.com.cn/weather_img/" + weatherinfo["img"+(i*2-1)] + ".gif";
- $(divid).append('<img src="' + imgurl + '"/>').append("<br>");
- $(divid).append(weatherinfo["temp" + i]).append("<br>");
- $(divid).append(weatherinfo["weather" + i]);
- }
- }
- </script>
- </head>
- <body onload="init()">
- <div id="cityname"></div>
- <hr></hr>
- <div id="div1" class="weatherdiv"></div>
- <div id="div2" class="weatherdiv"></div>
- <div id="div3" class="weatherdiv"></div>
- <div id="div4" class="weatherdiv"></div>
- <div id="div5" class="weatherdiv"></div>
- <div id="div6" class="weatherdiv"></div>
- </body>
- </html>
- html {
- height: 180px;
- width: 700px;
- }
- #cityname {
- text-align: center;
- font-size: 20px;
- font-weight: bold;
- margin: 5px;
- }
- .weatherdiv {
- float: left;
- width: 15%;
- margin: 5px;
- }



http://blog.csdn.net/dc_726/article/details/7547871
我的第一个Chrome插件:天气预报应用的更多相关文章
- 动手做第一个Chrome插件
Chrome插件是令人惊讶的简单,一旦你弄懂它的工作和实现原理.它是由一部分HTML,一部分Js,然后混合了一个叫做manifest.json的Json文件组合而成的整体.这意味着你可以使用你最擅长的 ...
- chrome 浏览器插件开发(一)—— 创建第一个chrome插件
最近在开发一个chrome插件,在网上找到了一些的文章,虽说按照文章可以写出对应的例子,但若要进行实际开发,发现还是有不少文章中没有的坑.下面我将结合我在开发过程中遇到的几个方面,对这些坑做一下补充. ...
- 我的项目:一个chrome插件的诞生记,名字叫jumper
选课是个问题,为了选课,便有了以下的故事. 最开始,萌生想法于2013年7月. 接着网上了解了chrome的结构知识,却发现例子是假的. 幸好有之前师兄的一个同功能插件开源,但代码写得很乱,我喜欢逻辑 ...
- 为了少点击几次,自己写了一个Chrome插件
缘由 chrome应用商店有三款二维码插件,自己一直使用的第一款.这三款插件有且只有一个功能就是生成当前页面的URL的二维码. 其实这个功能基本上满足了需要移动端开发在微信里打开页面进行调试的情况. ...
- 开发一个chrome插件:将百度搜索热点屏蔽掉!
每次百度搜索,搜索结果的右边总是出现些乱七八糟的搜索热点(推的都是些什么玩意,高校替课和我有毛关系,几个悲伤的热点我用星号顶掉了). 强迫症想把它隐藏掉,我用的是chrome浏览器,受adblock( ...
- js写一个chrome 插件
访问网站的时候,最烦的就是一些弹窗和广告.于是,就想着能不能在访问特定网站的时候,执行一段js脚本,去除页面的广告.于是乎,好像 chrome 插件可以实现. 这里,以 百度 的网站为例 新建 sim ...
- 菜鸟写的第一个chrome插件
一.新建一个文件夹,用来放插件的代码 二.首先新建配置文件manifest.json // 开发参考:http://open.chrome.360.cn/extension_dev/overview. ...
- Chrome插件(Extensions)开发攻略
本文将从个人经验出发,讲述为什么需要Chrome插件,如何开发,如何调试,到哪里找资料,会遇到怎样的问题以及如何解决等,同时给出一个个人认为的比较典型的例子——获取网页内容,和服务器交互,再把信息反馈 ...
- Chrome插件: 网站收藏
在工作中我们会收藏很多网址.以前一直都是用的chrome里面的收藏夹.后面觉得一点都不方便.看一下Chrome插件开发挺容易入手的所以自己写了一个Chrome插件. 基于:Angularjs + ...
随机推荐
- 【LCA最近公共祖先】在线离线
[在线] 1.倍增法 现将深度较大的跳至与深度较小的统一深度.预处理$fa[u][i]$表示$u$往上跳$2^i$个单位后的祖先,则就可以像快速幂一样,将移动的步数化为二进制,如果第$i$位为$1$, ...
- python request post
import requests import json class BaiduTranslateSpider: def __init__(self, kw): self.url = "htt ...
- Canvas范围裁切和几何变换
范围裁切 clipRect() canvas.save(); canvas.clipRect(left, top, right, bottom); canvas.drawBitmap(bitmap, ...
- 【16.52%】【codeforces 733C】Epidemic in Monstropolis
time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard ou ...
- Druid 专题
数据源配置: #datasource #Introductions: https://github.com/alibaba/druid/wiki/DruidDataSource%E9%85%8D%E7 ...
- Diffie-Hellman Key Exchange – A Non-Mathematician’s Explanation
The Complete Diffie-Hellman Key Exchange Diagram The process begins when each side of the communicat ...
- ActiveReports 报告应用程序教程 (2)---上市类报告
大多数数字在报告中系统类报告列表.实例:客户名单.产品列表.设备清单.采购清单.优惠券.商品发票.工作人员清点等..根据报告,查看类别列表相对简单.但,分丰富,在清单类报表中能够增加数据统计.数 ...
- 3 学习UML图 学习DDD的基本概念
今天在学习DDD的过程中看到了大神 圣杰的博文 个人觉得非常经典 强烈推荐 在此提供url链接: UML类图10分钟快速入门 关于聚合 的理解 :一类没有紧密相关的东西聚在一起 ,分开了也可以独立存 ...
- Effective C++:规定24:如果所有的单位都需要的参数类型转换,使用请做到这一点non-member功能
(一个) 如果一个class.同意整数"隐式转换为"有理数似乎非常合理. class Rational{ public: Rational(int numerator = 0, i ...
- STM32 模拟I2C (STM32F051)
/** ****************************************************************************** * @file i2c simu. ...