其实这个真挺无聊的,因为天气查询通过了YQL的接口,所以google返回是英文结果,就用js替换返回JSON里的值。
var w_city_name='nanning';
//$("#w_click").click(function(){
var w_url = 'http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20xml%20where%20url%3D%22http%3A%2F%2Fwww.google.com%2Fig%2Fapi%3Fweather%3D'+w_city_name+'%22&format=json&callback=?';
$.getJSON(w_url,function(w_data){
var temp_f = w_data.query.results.xml_api_reply.weather.current_conditions.temp_f.data;
var temp_c = w_data.query.results.xml_api_reply.weather.current_conditions.temp_c.data;
var humidity = w_data.query.results.xml_api_reply.weather.current_conditions.humidity.data.replace("Humidity:","");
var icon = 'http://www.google.com/'+w_data.query.results.xml_api_reply.weather.current_conditions.icon.data;
var condition=w_data.query.results.xml_api_reply.weather.current_conditions.condition.data;
var wind_condition=w_data.query.results.xml_api_reply.weather.current_conditions.wind_condition.data.replace("Wind:","");
//var condition=w_data.query.results.xml_api_reply.weather.forecast_conditions[0].condition.data;
wind_condition = wind_condition.replace(/\b(NE|NW|NS|ES|EN|E|S|N|W|at|Wind:|mph)\b/g, function($0, $1) {
return {
"NE": "北风转东风"
,"NS": "北风转南风"
,"NW": "北风转东风"
,"EN": "东风转北风"
,"ES": "东风转南风"
,"EW": "东风转南风"
,"WN": "北风转东风"
,"S":"南风"
,"W":"西风"
,"NW":"北风转西风"
,"NS":"北风"
,"N":"北风"
,"E":"东风"
,"Wind:": ""
, "at": "风速"
,"mph":"米/每秒"
}[$1];
});
condition = condition.replace(/\b(Cloudy|Chance of Storm|Overcast|Clear|Chance of Rain|Mostly|Haze|Rain)\b/g, function($0, $1) {
return {
"Cloudy": "多云"
,"Rain": "小雨"
,"Chance of Storm": "大雨"
, "Overcast": "阴天"
,"Clear":"晴朗"
,"Chance of Rain":"小雨"
,"Mostly":"",
"Haze":"薄雾"
}[$1];
});
//alert(wind_condition);
//$("#w_sd").append(humidity);//湿度
$("#w_c").empty().append(temp_c);//摄氏度
//$("#w_f").append(temp_f);//华氏度
$("#w_info").append(condition);//天气信息
//$("#w_wind").append(wind_condition);//风向
//$("#w_icon").attr({ src: icon, alt:condition});//天气图片
});
})
分享到:
相关推荐
node-yql, 用于NodeJS的YQL ( Yahoo查询语言) 模块 节点 yql节点YQL是 node.js的YQL客户端什么是 YQL?雅虎查询语言是一种表现语言,可以让你通过查询查询。过滤和 Join 数据。 使用 YQL,应用程序运行得更快,代码...
本文介绍一个利用Jquery和雅虎的YQL服务实现天气预报功能,需要的朋友可以参考下
一个简单的翻译类,通过YQL查询谷歌翻译 方法 .from(String language) 设置源语言。 必须是有效的或auto 。 默认为auto 。 .to(String language) 设置目标语言。 必须是有效的。 默认为en 。 .translate(String ...
yql-rss-speed-comparison, 演示如何使用YQL检索RSS提要的快速演示 演示如何使用YQL检索RSS提要的快速演示
全天候(YQL演示)应用程序将演示如何在iOS中使用YQL以及解析和显示JSON格式的数据。 此外,它还包括GPS定位的示例。 用户可以通过将类似QuerrySQL传递到YQL API来输入多个城市名称以分别获取天气信息
使用YQL获取json形式的html 然后用jsonp来实现ajax跨域 截取跨域的html网页
什么是yql-finance? yql-finance简单,快速 python API。 API返回当前时段和当前股票行情的收盘价(即APPL,GOOGL)。 股票价格:纳斯达克,SP&500,DAX等 如何使用它? 您可以使用它通过以下两种方式之一来获取...
雅虎查询语言 (YQL) 的简单 nodejs 连接器 安装 npm 安装 yqclient 用法 使用 yqlient 很简单; 这是如何: var yqlient = require ( 'yqlient' ) ; var yql = yqlient . initYQL ( ) ; yql . query ( 'select ...
YQL(但另一个查询语言) YQL与sql的where部分非常相似。 您可以将其视为另一个也支持两组比较的sql。 YQL几乎没有新概念,因此您可以在阅读示例后很短的时间内使用它。尽管它是为规则引擎设计的,但可以在您的代码...
yql-swift 是一个 Objective-C 库,为您的 iOS 应用程序提供 YQL 连接。 YQL(Yahoo! Query Language)是一种富有表现力的类似 SQL 的语言,可让您跨 Web 服务查询、过滤和连接数据。 使用 YQL,应用程序运行速度...
mogy-yql MySQL 查询活动。安装在您的 mogy 项目中,使用 npm 安装依赖项: $ npm install mogy-yql --save将yql活动注册到 Amazon Simple Workflow : $ mogy register配置此模块不需要配置!样本判定器使用 ...
Java API可通过Yahoo YQL访问外汇汇率,并回退到OpenExchangeRates JSON。 这些服务的响应将被缓存一小时,然后重新执行请求以获取最新费率。 不支持以下官方ISO 4217符号: BOV(玻利维亚Mvdol,基金代码), ...
如果我们想将变量传递给我们的工作人员,我们将使用熟悉的postMessage ,传递的 JSON 对象将在名为message的全局变量中可供工作人员使用。例子素数.html 在这个例子中,worker 在。 我们将从10000和数字12141231232...
证券交易所价值 JSON/XML 要在 xml 中获得结果,您必须删除回调和格式参数。 将回调参数设置为您的处理函数。 ECO10 米布 40 IPC墨西哥 COL20 美华 IPSA 利马指数一般
气象站长 用于在乔治亚理工学院举行的 gt-webdev ccorg 会议的 JS 天气应用演示。 现场演示: :
图书惊奇使用 Backbone JS 和 YQL(雅虎查询语言)开发的书店网站模型运行此代码的步骤: 在您的机器上安装 XAMPP 或 WAMP。 复制文件并将其粘贴到 XAMPP>htdocs 文件夹中。 点击“Localhost”或最好检查 xampp/wamp...
YQL Geo Library 是一个 JavaScript 库用来根据地名获取经纬度,或者根据经纬度获取对应的地名。 示例代码: yqlgeo.get('paris,fr',function(o){ alert(o.place.name ' (' o.place.centroid.latitude ',' o....
JsFiddle 实用程序这是目前一个简单的 JavaScript 项目,允许从检索指定用户的所有小提琴。 这个项目的一部分也是一个页面,用于以字符串化的 JSON 格式检索和打印所有小提琴。 您可以直接在访问该页面。 使用 JS...
天气资源 实现报告天气变化的资源。 该资源可以检测到新的预报,也可以检测到当前天气变化的时间。 此资源由提供支持。源配置city :用于天气预报的城市。 有效值看起来像是Paris, France或boulder, co 。 要检查...