落花落雨不落叶 阅读(65) 评论(0)

俗话说得好:弱,就得多练!

【想法来源】

为了多锻炼自己,我开始写这个小玩意,之前逛聚合数据这个网站的时候,发现他有个天气的API,我就想写个可以用的小应用。所以花了一个晚上东平西凑总算搞出来了。

【技术基础】

我的网站用了riotJs这个框架,所以在展示数据的时候会方便点(不知道什么是riotJS的可以看这里)但是那个跟这篇文章没关系;我主要介绍一些开发中比较有用的东西。

【正文】

1、rainyday.js

一开始本来想选一张好看点的图片做背景,但是总感觉少了什么,我想既然是天气,那就来个下雨效果吧,所以就用了这个;使用方法见官网吧,我也是按照那个来的,我就是调整了下参数。

2、URI二次转码

天气api需要两个参数,一个是key,这个是开发中独有的,你们不用管,另一个就是cityname,一开始请求成功但是总是显示cityname出错查找不到城市,当时心想妹的这个城市都找不到,后来才发现发送过去的参数中cityname变了样,譬如我输入'温州',本来应该是这个样子的:

%E6%B8%A9%E5%B7%9E

,但是发送过去的数据变成这样了:

%25E6%25B8%25A9%25E5%25B7%259E

这说明二次转码了,解决办法就是:

tianqiData.cityname = decodeURI(encodeURI(tianqiData.cityname));

(不用管变量名,这个是我从我源码中拷贝出来的)  

3、input的outline

在使用背景图片后,再用input文本类型的标签,鼠标点击会出现一个亮框,好丑。这时候只要给input设置这个样式:

outline: none;

 【效果图】

【应用网址】

天气应用

 有不好的地方可以跟我反馈