- 浏览: 789459 次
- 性别:
- 来自: 西安
文章分类
最新评论
-
mushme:
W.sl 写道大神:http://mushme.iteye.c ...
用python自动登录iteye -
W.sl:
大神:http://mushme.iteye.com/logi ...
用python自动登录iteye -
mushme:
jilong-liang 写道 public static v ...
选择一个好的驾校,用数据说话,我用python -
jilong-liang:
package sm;import java.net.URL; ...
选择一个好的驾校,用数据说话,我用python -
sunshine_bean:
非常感谢
jsvc将tomcat配置成服务
http://61.4.185.48:81/g/
这个地址,可以获取到城市id
http://m.weather.com.cn/data/101010100.html
101010100为城市id
然后就可以得到城市的天气预报
其实直接可以使用封装好的。
http://m.weather.com.cn/m/pn12/weather.htm
其中pn12为选择的样式。
以上是原理,现在是代码,一共三个文件
weather.html,weather.jsp,util
weather.html显示内容,weather.jsp做ajax抓取请求,解决跨域问题,然后一个工具类
1.weather.html
2.weather.jsp
3.util,此代码以前发过,是一个抓取工具类。
附件处有完整的代码。
这个地址,可以获取到城市id
http://m.weather.com.cn/data/101010100.html
101010100为城市id
然后就可以得到城市的天气预报
其实直接可以使用封装好的。
http://m.weather.com.cn/m/pn12/weather.htm
其中pn12为选择的样式。
以上是原理,现在是代码,一共三个文件
weather.html,weather.jsp,util
weather.html显示内容,weather.jsp做ajax抓取请求,解决跨域问题,然后一个工具类
1.weather.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <style type="text/css"> * {margin: 0;padding: 0;list-style:none;font-weight:normal;line-height:180%;}img {border:0;} body{ font-family: Verdana, Arial, Helvetica, sans-serif; background-color:transparent; color:#000;font-size:12px;text-align:center; margin: 0px auto; } a {color:#000;text-decoration:none;}a:hover {color:#FF6600;text-decoration:underline;}em {font-style:normal;}strong {}a strong {}select {height:20px;line-height:20px;}ul.row {clear:both;}ul.row li {float:left;margin:0 4px;}ul.row li a {display:inline;height:22px;line-height:22px;}.more a {}ul.col li {margin:4px auto;text-align:center;font-size:14px;font-weight:bold;}ul.col li #city {font-weight:bold;margin-left:10px;}ul.col li a {font-size:14px;font-weight:bold;}ul.col .small {padding-top:6px;}ul.col .small a {font-size:12px;}ul.col .line {padding:10px;border-bottom:1px dashed #ddd;}dl {clear:both;margin:0 auto;}dl dt {float:left;height:65px;margin-right:10px;}dl dt strong {display:block;margin-top:5px;*margin-top:10px;_margin-top:15px;}dl dt a {}dl dd {margin-left:5px;text-align:left;height:18px;line-height:18px;padding:0;margin:0;}dl .title {margin-bottom:4px;_margin-bottom:-4px;}dl .title #city {font-size:14px;font-weight:bold;} #cj {clear:both;margin: 0px auto;width:220px;} #left {float:left;text-align:center;}#left h3 { margin-bottom:4px;}#left h3 #city {font-size:14px;font-weight:bold;}#cj h4 {font-size:12px;margin-bottom:5px;} #right {margin-left:10px;text-align:left;}#cjbg {background:url(/img/bg.gif) left bottom repeat-x;height:90px;padding:10px;}#cjbg .line {border-left:1px solid #ddd;padding-left:8px;}#cjbg h4 {font-size:12px;}#right h3 #city {font-size:14px;margin-right:10px;font-weight:bold;margin-bottom:4px;}ul.new { background-color:transparent; height:28px; line-height:28px;}ul.new li a img { margin-top:4px;}ul.new li a em {font-weight:bold;color:#fff;line-height:28px;}ul.new li a:hover {text-decoration:none;color:#000;}ul.new li a:hover em {color:#000;}#eNew {text-align:left;margin:0 auto;width:150px;height:180px;}#eNew h1 {font-size:20px;margin-bottom:0;}#eNew h2 a em { font-size:14px; font-weight:normal;}#eNew h4 {background:url(/img/w.gif) left top no-repeat;height:43px;line-height:43px;text-indent:1em;width:150px;}#eNew h4 a em {line-height:43px;font-size:18px;font-weight:blod;}#eNew p {font-size:12px;}.blue{ text-align:right;}.blue li a{ color:#0070C0;}ul.blue li{ float:right;} </style> </head> <body> <div id="cj"> <span id="left"> <h3><a id="url1" href="" target="_blank"><em id="city"></em></a></h3> <p><a id="url2" href="" target="_blank"><img id="big1" src="" alt=""/></a> <a id="url3" href="" target="_blank"><img id="big2" src="" alt="" /></a></a></p> <h4><a id="url4" href="" target="_blank"><em id="weather1"></em></a></h4> </span> <span id="right"> <h4>温度:<a id="url5" href="" target="_blank"><em id="temp1"></em></a></h4> <h4>风力:<a id="url6" href="" target="_blank"><em id="wd1"></em></a></h4> <h4>紫外线:<a id="url7" href="" target="_blank"><em id="index_uv"></em></a></h4> <h4 class="more"><a id="url8" href="" target="_blank">未来七天预报</a></h4> </span> </div> <script type="text/javascript" > var xmlhttp=null; var jsonobj; var rs="http://61.4.185.48:81/g/"; var cookie_info= getCookie('newcity1'); var id1; var ids="url1,url2,url3,url4,url5,url6,url7"; var url=window.location.href; var start=url.indexOf("id"); var end=url.indexOf("T"); //设置文字的点击连接 var setURL=function(ids, url) {var nodes=ids;if(typeof nodes=="string"){nodes=nodes.split(",");} for( var i=0; i<nodes.length; i++){if(document.getElementById(nodes[i])){document.getElementById(nodes[i]).href=url;}}} //cookies函数 function setCookie(name, value) { var argv = setCookie.arguments; var argc = setCookie.arguments.length; var expires = (argc > 2) ? argv[2] : null; if(expires!=null) { var LargeExpDate = new Date (); LargeExpDate.setTime(LargeExpDate.getTime() + (expires*365*24*60*60*1000*10));} document.cookie = name + "=" + escape (value)+((expires == null) ? "" : ("; expires=" +LargeExpDate.toGMTString()));} function getCookie(Name) {var search = Name + "=" ; if(document.cookie.length > 0) {offset = document.cookie.indexOf(search) if(offset != -1) {offset += search.length; end = document.cookie.indexOf(";", offset); if(end == -1) end = document.cookie.length; return unescape(document.cookie.substring(offset, end));} else return "";}} //ajax建立连接方法 function createXMLHTTPRequext() {if (window.XMLHttpRequest) {xmlhttp = new XMLHttpRequest(); } else if (window.ActiveXObject) {xmlhttp =new ActiveXObject("Msxml2.XMLHTTP") ; if (! xmlhttp ) {xmlhttp = new ActiveXObject('Microsoft.XMLHTTP'); }}} //ajax返回处理方法 function HandleStateChange() {if (xmlhttp.readyState == 4) {var jsontext =xmlhttp.responseText; var func = new Function("return " + jsontext); jsonobj = func();}} function PostOrder(xmldoc) {createXMLHTTPRequext();xmlhttp.open("GET", xmldoc,false); xmlhttp.onreadystatechange= HandleStateChange; xmlhttp.send(null); } function returndata(id){ var datastr1; if(id==""){ str="101010100"; //datastr1='/data/'+str+'.html'; datastr1='weather.jsp?cityId='+str; } else{ //datastr1='/data/'+id+'.html'; datastr1='weather.jsp?cityId='+id; } PostOrder(datastr1); HandleStateChange(); var parseData=new Object(); with(jsonobj.weatherinfo){ parseData={ city:{innerHTML:city.substring(0,1).toUpperCase()+city.substring(1)}, weather1:{innerHTML:weather1}, temp1:{innerHTML:temp1}, wd1:{innerHTML:fl1}, img1:{innerHTML:img1}, img2:{innerHTML:img2}, index:{innerHTML:index}, index_d:{innerHTML:index_d}, index_xc:{innerHTML:index_xc}, index_uv:{innerHTML:index_uv}, url8:{href:"http://www.weather.com.cn/weather/"+id+".shtml#7d"}, date_y:{innerHTML:date_y}, week:{innerHTML:week},small:{src:"http://m.weather.com.cn/img/c"+img_single+".gif",title:img_title_single}, small1:{src:"http://m.weather.com.cn/img/c"+img1+".gif",title:img_title1}, small2:{src:img2==99?"":"http://m.weather.com.cn/img/c"+img2+".gif",title:img_title2}, big:{src:"http://m.weather.com.cn/img/b"+img_single+".gif",title:img_title_single}, big1:{src:"http://m.weather.com.cn/img/b"+img1+".gif",title:img_title1}, big2:{src:(img2==99)?"":"http://m.weather.com.cn/img/b"+img2+".gif",title:(img2==99)?"":img_title2,width:(img2==99)?"0":"50",alt:(img2==99)?"":"img_title2"} } } for( var m in parseData){ var node=document.getElementById(m); var sets=parseData[m]; if(node){for( var prop in sets ){node[prop]=sets[prop];}} } } if(start!=-1){ var first=start+parseInt(3); call=url.substring(first,end); returndata(call); setURL(ids,"http://www.weather.com.cn/weather/"+call+".shtml"); }else{ if(!cookie_info){ var js = document.createElement("script"); js.setAttribute("type", "text/javascript"); js.setAttribute("src",rs); document.body.insertBefore(js, null); function id_callback() { std = id; if(typeof(id)=="undefined") {id1="101010100"; setURL(ids,"http://www.weather.com.cn/weather/"+id1+".shtml"); returndata(id1);} else {id1=std; time=new Date(); time.setTime(time.getTime()+365*24*60*60*1000*10); date=time.toGMTString(); document.cookie = "newcity1=" + escape(std)+ ";expires="+date; setURL(ids,"http://www.weather.com.cn/weather/"+id1+".shtml"); returndata(std);}} }else{ id1=cookie_info; setURL(ids,"http://www.weather.com.cn/weather/"+id1+".shtml"); returndata(id1); } } function RQ(pVar,pURL) { pURL = window.location.href; try{ pURL=decodeURIComponent(pURL) }catch(e){ } var vars =pURL.split("?"); if(vars.length==1) return " "; var varsList=vars[1].split("&"); var equalString; for(var i=0;equalString=varsList[i];i++){ var equalArray=equalString.split("="); if(equalArray[0]==pVar) return equalArray[1] ; } } if(RQ("color")=="white") { document.getElementById("city").style.color="#FFF"; document.getElementById("weather1").style.color="#FFF"; document.getElementById("right").style.color="#FFF"; document.getElementById("url5").style.color="#FFF"; document.getElementById("url6").style.color="#FFF"; document.getElementById("url7").style.color="#FFF"; document.getElementById("url8").style.color="#FFF"; } var vjAcc="";var wrUrl="http://c.wrating.com/";var wrSv=0;function vjTrack(C){var B=vjValidateTrack();if(B===false){return}var A=wrUrl+"a.gif"+vjGetTrackImgUrl(C);document.write('<div style="display:none"><img src="'+A+'" id="wrTagImage" width="1" height="1"/></div>');vjSurveyCheck()}function vjEventTrack(D){var C=vjValidateTrack();if(C===false){return}var B=wrUrl+"a.gif"+vjGetTrackImgUrl(D);var A=new Image();A.src=B;A.onload=function(){}}function vjValidateTrack(){if(document.location.protocol=="file:"){return false}if(vjAcc==""){return false}else{if(wrUrl.substr(wrUrl.length-1,1)!="/"){wrUrl+="/"}}return true}function vjGetTrackImgUrl(S){var M=0;var N="expires=Fri, 1 Jan 2038 00:00:00 GMT;";var T=document.location;var P=document.referrer.toString();var D;var H=vjGetDomainFromUrl(T);var K;var V;var Y="";var L=vjFlash();var G="";var Z="";var J="";var O=navigator.appName+" "+navigator.appVersion;var F=new Date();var X=F.getTimezoneOffset()/-60;var A=0;var U="";var R="";if(typeof (H[1])!="undefined"){V=H[1]}else{if(typeof (H[0])!="undefined"){V=H[0]}}if(P!=""){Y=vjGetKeyword(P)}else{if((O.indexOf("MSIE")>=0)&&(parseInt(O.substr(O.indexOf("MSIE")+5),4)>=5)&&(O.indexOf("Mac")==-1)&&(navigator.userAgent.indexOf("Opera")==-1)){try{document.documentElement.addBehavior("#default#homePage");if(document.documentElement.isHomePage(location.href)){P="ishomepage"}}catch(W){}}}if(navigator.cookieEnabled){M=1}if(self.screen){G=screen.width+"x"+screen.height+"x"+screen.colorDepth}else{if(self.java){var Q=java.awt.Toolkit.getDefaultToolkit().getScreenSize();G=Q.width+"x"+Q.height+"x0"}}if(navigator.language){Z=navigator.language.toLowerCase()}else{if(navigator.browserLanguage){Z=navigator.browserLanguage.toLowerCase()}else{Z="-"}}if(navigator.javaEnabled()){A=1}if(M==1){D=document.cookie;if(D.indexOf("vjuids=")<0){K=vjVisitorID();document.cookie="vjuids="+escape(K)+";"+N+";domain="+V+";path=/;"}else{K=vjGetCookie("vjuids")}if(D.indexOf("vjlast=")<0){U="30";var E=vjGetTimestamp(F.getTime()).toString();R=E+"."+E+".30"}else{var a=vjGetCookie("vjlast");var C=a.split(".");var B="";if(typeof (C[0])!="undefined"){R=C[0].toString()}else{R=vjGetTimestamp(F.getTime()).toString()}if(typeof (C[1])!="undefined"){var I=new Date(parseInt(C[1])*1000);if(I.toDateString()!=F.toDateString()){R+="."+vjGetTimestamp(F.getTime()).toString();if(parseInt(vjGetTimestamp(F.getTime())-parseInt(C[1]))/86400>30){U="2"}else{U="1"}if(typeof (C[2])!="undefined"){U+=C[2].substr(0,1)}else{U+="0"}}else{R+="."+C[1].toString();if(typeof (C[2])!="undefined"){U+=C[2]}else{U="10"}}}else{R+="."+vjGetTimestamp(F.getTime()).toString();if(typeof (C[2])!="undefined"){U+=C[2]}else{U="10"}}R+="."+U}document.cookie="vjlast="+R+";"+N+";domain="+V+";path=/;"}J="?a="+F.getTime().toString(16)+"&t=&i="+escape(K);J+="&b="+escape(T)+"&c="+vjAcc;J+="&s="+G+"&l="+Z;J+="&z="+X+"&j="+A+"&f="+escape(L);if(P!=""){J+="&r="+escape(P)+"&kw="+Y}J+="&ut="+U+"&n=";if(typeof (S)=="undefined"){J+="&js="}else{J+="&js="+escape(S)}J+="&ck="+M;return J}function vjGetTimestamp(A){return Math.round(A/1000)}function vjGetKeyword(C){var A=[["baidu","wd"],["baidu","q1"],["google","q"],["google","as_q"],["yahoo","p"],["msn","q"],["live","q"],["sogou","query"],["youdao","q"],["soso","w"],["zhongsou","w"],["zhongsou","w1"]];var B=vjGetDomainFromUrl(C.toString().toLowerCase());var D=-1;var E="";if(typeof (B[0])=="undefined"){return""}for(i=0;i<A.length;i++){if(B[0].indexOf("."+A[i][0]+".")>=0){D=-1;D=C.indexOf("&"+A[i][1]+"=");if(D<0){D=C.indexOf("?"+A[i][1]+"=")}if(D>=0){E=C.substr(D+A[i][1].length+2,C.length-(D+A[i][1].length+2));D=E.indexOf("&");if(D>=0){E=E.substr(0,D)}if(E==""){return""}else{return A[i][0]+"|"+E}}}}return""}function vjGetDomainFromUrl(E){if(E==""){return false}E=E.toString().toLowerCase();var F=[];var C=E.indexOf("//")+2;var B=E.substr(C,E.length-C);var A=B.indexOf("/");if(A>=0){F[0]=B.substr(0,A)}else{F[0]=B}var D=F[0].match(/[^.]+\.(com.cn|net.cn|gov.cn|cn|com|net|org|gov|cc|biz|info)+$/);if(D){if(typeof (D[0])!="undefined"){F[1]=D[0]}}return F}function vjVisitorID(){var A=vjHash(document.location+document.cookie+document.referrer).toString(16);var B=new Date();return A+"."+B.getTime().toString(16)+"."+Math.random().toString(16)}function vjHash(C){if(!C||C==""){return 0}var B=0;for(var A=C.length-1;A>=0;A--){var D=parseInt(C.charCodeAt(A));B=(B<<5)+B+D}return B}function vjGetCookie(D){var B=D+"=";var F=B.length;var A=document.cookie.length;var E=0;while(E<A){var C=E+F;if(document.cookie.substring(E,C)==B){return vjGetCookieVal(C)}E=document.cookie.indexOf(" ",E)+1;if(E==1){break}}return null}function vjGetCookieVal(B){var A=document.cookie.indexOf(";",B);if(A==-1){A=document.cookie.length}return unescape(document.cookie.substring(B,A))}function vjFlash(){var _flashVer="-";var _navigator=navigator;if(_navigator.plugins&&_navigator.plugins.length){for(var ii=0;ii<_navigator.plugins.length;ii++){if(_navigator.plugins[ii].name.indexOf("Shockwave Flash")!=-1){_flashVer=_navigator.plugins[ii].description.split("Shockwave Flash ")[1];break}}}else{if(window.ActiveXObject){for(var ii=10;ii>=2;ii--){try{var fl=eval("new ActiveXObject('ShockwaveFlash.ShockwaveFlash."+ii+"');");if(fl){_flashVer=ii+".0";break}}catch(e){}}}}return _flashVer}function vjSurveyCheck(){if(wrSv<=0){return}var C=new Date();var A=C.getTime();var D=Math.random(A);if(D<=parseFloat(1/wrSv)){var B=document.createElement("script");B.type="text/javascript";B.id="wratingSuevey";B.src="http://tongji.wrating.com/survey/check.php?c="+vjAcc;document.getElementsByTagName("head")[0].appendChild(B)}}; var vjAcc="860010-2151010100"; var wrUrl="http://c.wrating.com/"; var wrRandom = 70; var now = new Date(); var seed = now.getTime(); var randomNumber = Math.random(seed); if (randomNumber <= parseFloat(1/wrRandom)) {vjTrack("");} </script> <noscript><img src="http://c.wrating.com/a.gif?a=&c=860010-2151010100" width="1" height="1"/></noscript> </body> </html>
2.weather.jsp
<% String cityId=request.getParameter("cityId"); String content=UrlUtil.readUrlContent("http://m.weather.com.cn/data/"+cityId+".html"); out.print(content); %> <%@ page language="java" import="info.frady.util.*" pageEncoding="UTF-8"%>
3.util,此代码以前发过,是一个抓取工具类。
package info.frady.util; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.MalformedURLException; import java.net.URL; public class UrlUtil { public static String readUrlContent(String url){ StringBuffer sb=new StringBuffer(); try{ String strLine; URL urlObj = new URL(url); InputStream streamObj = urlObj.openStream(); InputStreamReader readerObj = new InputStreamReader(streamObj,"UTF-8"); BufferedReader buffObj = new BufferedReader(readerObj); while((strLine = buffObj.readLine())!=null) sb.append(strLine+"\r"); buffObj.close(); }catch(MalformedURLException e){ System.err.println("url error"); }catch(IOException e){ System.out.println("IO error"); } return sb.toString(); } }
附件处有完整的代码。
- weather.zip (6.4 KB)
- 下载次数: 8
发表评论
-
nginx+tomcat配置https最简单方案
2018-10-21 16:59 15021.申请https证书 https的证书在阿里云现在可以免费申 ... -
将spring boot部署到tomcat上
2018-08-27 12:56 11041.将项目的启动类Application.java继承Spri ... -
删除windows无用的垃圾文件
2018-07-03 08:29 1708windows在运行时,会产生很多无用的临时文件,随着临时文件 ... -
虫子穿洞
2017-12-30 21:13 7package test; import java.util ... -
通过filter修改提交过来的数据
2017-06-23 13:57 820request.getParameter可以获取到前台提交到的 ... -
寻找路径
2017-04-23 20:26 535package test; import java. ... -
寻找路径
2017-04-22 22:53 14package test; import java. ... -
按照顺序四则运算
2017-04-22 21:43 613package test; import java. ... -
autoit使用des加密解密
2016-09-22 15:16 1645直接使用crypt包,默认包含的,不用安装,引用即可 #i ... -
autoit读取ini配置文件
2016-09-22 15:13 1622读取ini文件,从脚本当前目录的key.ini中读取 Gl ... -
DES加密解密的工具类
2016-09-21 15:00 681package info.frady; import ... -
使用autoit实现自动操作
2016-09-21 09:24 3655使用autoit自动登录vmware的例子 主要使用了几个自动 ... -
项目流程模版
2016-08-11 13:50 501项目前期调研 可行性分析及商业论证 商务谈判,提供报价 ... -
什么是闭包?翻译
2016-07-13 14:32 810翻译了一偏比较老的文 ... -
用java解数独
2016-07-08 13:06 830自己写的,没解出来,搜到这个,没试过 package in ... -
入门一门语言的顺序
2016-03-01 16:01 5521.阅读语言简介,了解语言的优劣势。 2.搭建运行环境,编写h ... -
下载知乎制定问题回答者的头像
2015-10-14 15:27 805如题,下载知乎制定问题回答者的头像 用jsoup实现解析 ... -
wifi共享精灵
2013-09-29 13:08 1101官网:http://www.wifigx.com/ 可以实现将 ... -
不能上网错误 137 (net::ERR_NAME_RESOLUTION_FAILED):未知错误的解决方法
2013-09-09 22:15 13715IE, chrome不能上网, 但是火狐可以上网, QQ等客户 ... -
对旧的用户密码系统的改造
2013-06-07 12:45 4057看到大家评论较多,就把方案加强了下 旧的系统密码存储的是md ...
相关推荐
安卓天气预报软件需求分析说明书 该文件主要介绍了 Android 应用程序开发课程天气预报软件的需求分析报告,涵盖了软件开发中的各个方面,包括需求定义、软件设计、系统功能需求、接口设计、数据存储、安全性需求、...
【标题】:“Discuz天气预报插件” 在网站运营中,Discuz! 是一款非常流行的社区论坛软件,它为用户提供了一个高效、易用的平台来建立和管理在线社区。而“Discuz天气预报插件”是针对这个平台设计的一个实用功能...
### 天气预报插件网站的关键知识点 #### 一、天气预报插件网站概述 - **定义**:天气预报插件网站是指提供天气预报服务的在线平台,通过该平台可以获取到不同地区的实时天气信息、未来几天的天气预测等数据。这类...
《jQuery天气预报插件模板详解》 在网页设计与开发中,为了提升用户体验,许多开发者会集成实时天气预报功能。jQuery作为一个轻量级、高效且易用的JavaScript库,为实现这一功能提供了便利。本篇文章将详细介绍一个...
火鸟天气预报(FireBirdWeather)是一款全中文桌面天气预报软件。可实时、准确显示全国2348个县级以上城市天气状况。 永久免费,您可以任意下载、转载、传播。 * 支持开机自启动 * 嵌入桌面,能融入桌面。 ...
【标题】"天气预报插件源码"是一个基于JavaScript库jQuery开发的插件,用于在网页上展示实时天气预报信息。这个插件采用div布局,为用户提供了一个直观且易于集成的解决方案来显示当地的天气状况。 【描述】描述中...
web页面第三方天气预报插件
用于天气预报插件,天气预报 Web 服务,数据来源于中国气象局 http://www.cma.gov.cn/ ,数据每2.5小时左右自动更新一次,准确可靠。包括 340 多个中国主要城市和 60 多个国外主要城市三日内的天气预报数据。 此天气...
易语言天气预报插件源码,天气预报插件,MSN_省级,MSN_市级,MSN_县级,MSN_返回信息,MSN_白天,MSN_晚上,线程_取省,编码_Unicode转ANSI,网络_XmlHttp,编码_UTF8转ANSI,编码_UTF8转Unicode,文本_取中间,线程_市查询,线程_...
超级漂亮简单实用jQuery天气预报插件下载。一款界面设计扁平化,简洁大气的世界各地天气预报插件。支持手动输入城市(支持英文或中文拼音)获取天气信息。这款jQuery天气预报插件的特点在于可以动态切换城市,通过...
边栏纯天气预报插件是针对Discuz! 7.0这一特定版本的社区论坛软件设计的一款增强功能组件。Discuz! 是一个广泛使用的开源论坛系统,它允许用户创建和管理自己的在线社区。这款插件的目的是为了在论坛的边栏(通常...
在Web开发中,为了增强用户体验,常常会引入各种插件来提供特定的功能,例如天气预报插件。"web页面第三方天气预报插件"是这样的一个工具,它允许开发者轻松地在网页上集成实时天气信息,为用户提供便利。下面将详细...
这是一个开源的、基于jQuery 函数库的 JavaScript 天气预报脚本插件。 代码语法完全符合W3C网页标准,完全兼容各种主流浏览器。 本插件主要用于天气预报的展示。 浏览器兼容: Internet Explorer 6 /7 /8 /9 Fire...
【天气预报插件for 7.0 sp2 Tianqi7.0】是一款专为7.0 sp2版本设计的插件,主要用于在论坛环境中提供实时天气预报服务,增强用户互动体验,让论坛用户能够轻松获取所在地的天气信息,提高用户粘性。 这款插件的核心...
《jQuery 3D卡片天气预报插件:手机端滑动技术解析》 在现代Web开发中,用户体验成为了设计的核心考量之一。为了提升网页的互动性和吸引力,开发者们常常利用JavaScript库,如jQuery,来实现各种动态效果。"jQuery ...
用Java编写的天气预报软件,可以显示所在地未来5天的温度和天气状况以及当天的生活小提示。 首次运行会产生一个 city.txt 的UTF编码文件纪录城市信息。软件无需安装。可以在任何支持jre 1.6 以上的环境中运行。 ...
标题中的“天气预报软件 桌面版”指的是这是一款专为个人计算机用户设计的桌面应用程序,用于查看和获取实时的天气信息。这类软件通常具备简洁的用户界面,便于用户快速查询各地的天气状况,包括温度、湿度、风速、...
单城市48小时天气预报插件,元素包括:城市名称、城市定制、今天及明天单天气图标、风力、温度、天气现象描述,增加城市IP自动判断功能,根据访问者的IP自动改变城市。
【Android天气预报软件开发详解】 Android天气预报软件是一款运行在Android操作系统上的应用程序,它能够为用户提供实时的天气信息,包括气温、湿度、风速、天气状况等,有时还会包含未来几天的天气预报。这款软件...