flash rss 天气预报源码
最简单的flash rss 天气预报源码,注:flash发布分为只访问网络和只访问本地,这个当然要设为只访问网络,不然会有提示框弹出本例是用 Flash 8 工具( ActionScrtipt2.0 ) 写的
第二个包包含第一个并完善一点点(如有多个,以此类推)
第二个包运行载图:
http://dl.iteye.com/upload/attachment/221233/f74bc1b3-bebc-3414-bc3e-a9437442aa3f.png
下面是源码,可直接编成swf 文件运行
//fscommand("showmenu", "false");//fscommand("fullscreen", "true");//fscommand("wmode","transparent");fscommand("scale","exactfit");Stage.scaleMode = "exactfit";//Stage.scaleMode = "noScale";var param_city_cn = "广州";var city = "guangzhou,guangdong";var language = "zh-cn";var weather_msg_logo_arr = ["晴,0","以晴为主,0", "雾,2","雾霾,2", "多云,3", "阴,4","可能有暴风雨,9", "可能有雨,6", "晴间多云,3", "阴-雷-雨,6" , "雨,9", "雷-雨,10", "阴-雨,5", "晴-阴,2", "雨-,9","Chance of Rain,6","Chance of Storm,9","Cloudy,3","Partly Sunny,3","Fog,2","Light rain,6","rain,9"];//var flash = new SWFObject('xml1.swf', 'mymovie', 800, 400, '7', '');var param_color1 = 0xffffff;var param_color2 = 0x2f6da6;var param_size1 = 20;var param_size2 = 16;var param_city = "guangzhou,guangdong";var imdex = 0;var count = 0;var getUrlStr = "";var next_day_low = "";var next_day_high = "";var next_day_weather = "";var next_day_low2 = "";var next_day_high2 = "";var next_day_weather2 = "";picW = 20;picH = 80;link1 = "link";//city = "xiangfan,hubei";//http://www.google.com/ig/api?weather=xiangfan,hubei&hl=zh-cnvar first_url = "http://www.google.com";var url = first_url+"/ig/api?weather="+city+"&hl=" + language;var lowstr = "";var highstr = "";var weatherstr = "";var timestr = "";var weekstr = "";var shidustr = "";var windstr = "";var citystr = "";var shengstr = "";var datestr = "";var current_week = "";var next_week = "";var next_week2 = "";var main:MovieClip = this;/*var myXML = new XML();fpv_cn = new LoadVars();fpv_cn.load(url);fpv_cn.onData = function(data) {fpv_cn_str = new String(data);//trace(fpv_cn_str);myXML = new XML(fpv_cn_str);_root.createEmptyMovieClip(loadPic, -1000);_root._y = 20;showWeather();}*/var myXML = new XML();myXML.ignoreWhite = true;//trace(url);myXML.load(url);myXML.onLoad = function(success) {if (success) {_root.createEmptyMovieClip(loadPic, -1000);_root._y = 20;showWeather();} else {trace("加载不成功");}};var interval ;var intervalCount = 0;function reLoadMsg(){if(intervalCount > 3){myXML = new XML("http://www.google.com/ig/api?weather=guangzhou,guangdong&hl=zh-cn");showWeather();}else{if(count<= 1){interval = setInterval(showWeather,1000);}}}var systemmsg = "";//检测操作系统var os:String = System.capabilities.os.substr(0, 3);systemmsg += os+" ";//检查播放器类型var playertype:String = System.capabilities.playerType;//tips.text = playertype;if (playertype == 'External') {System.useCodepage = true;} else if (playertype == 'StandAlone') {System.useCodepage = true;} else if (playertype == 'Plugin' || playertype == 'PlugIn') {System.useCodepage = false;} else {System.useCodepage = false;}if(language == 'zh-hk'){System.useCodepage = false;}//检测系统语言var lang:String = System.capabilities.language;systemmsg += playertype+" "+lang;/* //检测屏幕分辨率 var screenx:int=System.capabilities.screenResolutionX; var screeny:int=System.capabilities.screenResolutionY; var screencolor=System.capabilities.screenColor; trace(lang+" "+screenx+" "+screeny+" "+screencolor); */function changeWeatherLogo(obj, index) {obj.gotoAndPlay(index);}function checkWeatherMsg(obj, checkMsg) {var index = getWeatherLogoIndex(checkMsg);//trace(obj+' '+checkMsg+' '+index);changeWeatherLogo(obj, index);}function getWeatherLogoIndex(checkMsg) {var index = 1;for (var i = 0; i<weather_msg_logo_arr.length; i++) {var msg = weather_msg_logo_arr.split(',');index = weather_msg_logo_arr.split(',');if (msg.indexOf("-") != -1) {var ls_msgs = msg.split("-");var all_true = true;for (var j = 0; j<ls_msgs.length; j++) {if (checkMsg.indexOf(ls_msgs) == -1) {all_true = false;}}if (all_true) {return index;}} else {if (checkMsg == msg) {return index;}}}}String.prototype.replace = function(oldStr:String, newStr:String) { return this.split(oldStr).join(newStr); }function sFilter(str,reg){return str.replace('可能有','').replace("Chance of",'');}function shiduFilter(str){var s = "湿度";if(language == 'zh-hk'){s = "濕度";}return s + ":" + str.split(" ");}function weekFilter(str){return str.replace("周","星期").replace("週","星期");}/*******************************/function showWeather() {var showstr = "";var imgstr = "";myList = myXML.firstChild.firstChild.childNodes;count = myList.length;//trace(count+' '+myList);for (i=0; i<myList.length; i++) {imdex = i;var dayMsg = myList.childNodes;for (j=0; j<dayMsg.length; j++) {if (i == 0) {citystr = dayMsg.attributes.data.split(",");datestr = dayMsg.attributes.data;}if (i == 1) {shidustr = dayMsg.attributes.data;windstr = dayMsg.attributes.data;}if (i == 2) {current_week = dayMsg.attributes.data;lowstr = dayMsg.attributes.data;highstr = dayMsg.attributes.data;imgstr = dayMsg.attributes.data;weatherstr = dayMsg.attributes.data;checkWeatherMsg(current_day_logo, weatherstr);}if (i == 3) {next_week = dayMsg.attributes.data;next_day_low = dayMsg.attributes.data;next_day_high = dayMsg.attributes.data;next_day_weather = dayMsg.attributes.data;checkWeatherMsg(next_day_logo, next_day_weather);}if (i == 4) {next_week2 = dayMsg.attributes.data;next_day_low2 = dayMsg.attributes.data;next_day_high2 = dayMsg.attributes.data;next_day_weather2 = dayMsg.attributes.data;checkWeatherMsg(next_day_logo2, next_day_weather2);}}}showWeatherMsg();var showImgUrl = first_url+imgstr;}function showWeatherMsg() {//var weatherText_ms = _root.createEmptyMovieClip("weatherText_ms", 80);//var dateText_ms = _root.createEmptyMovieClip("dateText_ms", 1);//var city_ms = _root.createEmptyMovieClip("city_ms", 50);//var next_day_ms = _root.createEmptyMovieClip("next_day_ms", 2);//var next_day_ms2 = _root.createEmptyMovieClip("next_day_ms2", 3);shidu_ms.createTextField("shidumsg",1,0,0,200,100);dateText_ms.createTextField("datemsg", 1, 0, 0, 300, 100);//日期weatherText_ms.createTextField("windmsg", 0, 0, 0, 300, 100);//当天风速current_temp.createTextField("temperaturemsg", 2, 0, 0, 300, 100);//当天温度city_ms.createTextField("citymsg", 3, 0, 0, 300, 100);//城市信息current_weather.createTextField("weathermsg", 5, 0, 0, 300, 100);//当天天气nextdayTitle_ms.createTextField("nextdayTitle", 4, 0, 0, 200, 100);nextdayTitle_ms2.createTextField("nextdayTitle2", 4, 0, 0, 200, 100);nextdaytem_ms.createTextField("nextdaytem", 5, 0, 0, 200, 100);//第二天温度nextdaytem_ms2.createTextField("nextdaytem2", 5, 0, 0, 200, 100);//3tdnextdayweather_ms.createTextField("nextdayweather", 6, 0, 0, 200, 100);//第三天温度nextdayweather_ms2.createTextField("nextdayweather2", 6, 0, 0, 200, 100);//3tdnextdayTitle_ms.nextdayTitle.text = weekFilter(next_week);nextdayTitle_ms2.nextdayTitle2.text = weekFilter(next_week2);nextdaytem_ms.nextdaytem.text = next_day_low+" / "+next_day_high+"℃";nextdayweather_ms.nextdayweather.text = sFilter(next_day_weather);nextdaytem_ms2.nextdaytem2.text = next_day_low2+" / "+next_day_high2+"℃";nextdayweather_ms2.nextdayweather2.text = sFilter(next_day_weather2);current_weather.weathermsg.text = sFilter(weatherstr);shidu_ms.shidumsg .text = shiduFilter(shidustr);//设置文字样式dateText_ms.datemsg.text = datestr + " "+ weekFilter( current_week);//设置文字样式current_temp.temperaturemsg.text = lowstr+" / "+highstr+"℃";//设置文字样式//weatherText_ms.windmsg.text = windstr;//设置文字样式citystr = param_city_cn;city_ms.citymsg.text = citystr;//设置文字样式textstyle1 = new TextFormat();textstyle1.color = param_color1;textstyle1.font = "verdana";textstyle1.size = param_size1;textstyle1.bold = true;textstyle2 = new TextFormat();textstyle2.color = param_color2;textstyle2.font = "verdana";textstyle2.size = param_size2;textstyle2.bold = true;textstyle3 = new TextFormat();textstyle3.color = param_color1;textstyle3.font = "arial";textstyle3.size = 20;textstyle3.bold = true;current_temp.temperaturemsg.setTextFormat(textstyle3);dateText_ms.datemsg.setTextFormat(textstyle1);current_weather.weathermsg.setTextFormat(textstyle3);shidu_ms.shidumsg.setTextFormat(textstyle3);city_ms.citymsg.setTextFormat(textstyle1);nextdayTitle_ms.nextdayTitle.setTextFormat(textstyle2);nextdayTitle_ms2.nextdayTitle2.setTextFormat(textstyle2);nextdaytem_ms.nextdaytem.setTextFormat(textstyle2);nextdayweather_ms.nextdayweather.setTextFormat(textstyle2);nextdaytem_ms2.nextdaytem2.setTextFormat(textstyle2);nextdayweather_ms2.nextdayweather2.setTextFormat(textstyle2);}function alert(msg){trace(msg );}/*************************//*var os:String = System.capabilities.os.substr(0, 3);if (os == "Win") {// Windows-specific code goes here} else if (os == "Mac") {// Mac-specific code goes here} else {// Must be Unix or Linux}if(flash.system.Capabilities.playerType == "Plugin") {// do actions for Mozilla, etc. browsers}else if(flash.system.Capabilities.playerType == "ActiveX") {// do actions for IE}else {// do actions for no browser}检测系统语言// Example output: en-UStrace(flash.system.Capabilities.language);var greetings:Array = new Array( );greetings["en"] = "Hello";greetings["es"] = "Hola";greetings["fr"] = "Bonjour";var lang:String = flash.system.Capabilities.language.substr(0, 2);if (greetings == undefined) {lang = "en";}利用分辨率还可以居中你的弹出窗口:var resX:int = flash.system.Capabilities.screenResolutionX;var resY:int = flash.system.Capabilities.screenResolutionY;//设置窗口的宽和高var winW:int = 200;var winH:int = 200;// 设置窗口起始坐标var winX:int = (resX / 2) - (winW / 2);var winY:int = (resY / 2) - (winH / 2);// 创建代码,然后传递给URLLoader.load( )// 打开新浏览器窗口var jsCode:String = "javascript:void(newWin=window.open('http://www.person13.com/'," +"'newWindow', 'width=" + winW +", height=" + winH + "," +"left=" + winX + ",top=" + winY + "'));";// 使用URLLoader 对象调用JavaScript 函数urlLoader.load(new URLRequest(jsCode));*/
页:
[1]