我的第一个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 + ...
随机推荐
- maven webcollector java.lang.ClassNotFoundException: org.openqa.selenium.remote.SessionNotFoundException
使用webcollector时出现了如下异常 分析是依赖的问题,不仅要添加selenium-java,还要添加htmlunit-driver的依赖,注意不要添加成selenium-htmlunit-d ...
- <meta http-equiv="refresh" content="0; url=">什么意思?
原文:<meta http-equiv="refresh" content="0; url=">什么意思? 页面定期刷新,如果加url的,则会重新定 ...
- 微信,支付宝,支付异步通知验签,notify_url
在支付接口开发中 ,当用户支付完成之后,阿里或者微信会向我们服务器发送一个支付结果的通知,里边带有一系列参数:其中特殊的是签名类型,和签名(他们根据这些参数做出来的签名). 我们的得到这些参数之后要去 ...
- C#连接Oracle数据库乱码问题
C#连接Oracle数据库乱码问题 数据库连接之前,设置环境变量,如下 Environment.SetEnvironmentVariable("NLS_LANG", "A ...
- python 和为S的两个数字
输入一个递增排序的数组和一个数字S,在数组中查找两个数,是的他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的. 运用到的知识; 1.判断是否是统一类型: if not isinsta ...
- Matlab Tricks(二十)—— Hilbert matrix 的创建
Hij=1i+j−1 N = 5; A = ones(N, 1)*(1:N); B = A'; H = 1./(M+N-1);
- MySQL第五个学习笔记 该数据表的操作
MySQL在创建表,创建.frm文件保存表和列定义.索引存储在一个.MYI(MYindex)且数据存储在有.MYD(MYData)扩展名的文件里. 一.用SHOW/ DESCRIBE语句显示数据表 ...
- handler looper和messageQueue
一.用法. Looper为了应付新闻周期,在创建过程中初始化MessageQueue. Handler在一个消息到当前线程的其他线程 MessageQueue用于存储所述消息 Looper其中线程创建 ...
- cocos2d 滚动背景 举 无限
void Bird::update(float time){ auto bg=this->getChildByTag(200); auto bg1=this->getChildByTag( ...
- Touch panel DTS 分析(MSM8994平台,Atmel 芯片)
Touch panel DTS 分析(MSM8994平台,Atmel 芯片) 在MSM8994平台,Touch panel的DTS写节点/kernel/arch/arm/boot/dts/qcom/m ...