// 百度地图-乡镇天气预报 var mkjson = null; var map = null; var infoBoxs = null; var infoList = null; /* 如果雨>0:有雨 否则: 0:晴 1~2:少云 3~6:少到多云 7~9:多云 10:阴天 杜哥提供20141229 */ var weatherStatus = { 0: ["晴", 0], 1: ["少云", 1], 2: ["少云", 1], 3: ["少到多云", 1], 4: ["少到多云", 1], 5: ["少到多云", 1], 6: ["少到多云", 1], 7: ["多云", 1], 8: ["多云", 1], 9: ["多云", 1], 10: ["阴天", 2], 11: ["有雨", 7] }; $(function () { $.getJSON("/weather/data/township/township.js?t=" + Math.random(), function (json) { if (json) { infoList = json; $(".tab").html(""); bindData(""); var CurrentId = $(".station_jcz option:selected").val(); $(Areas).each(function (index, item) { if (item.id == CurrentId)//根据区域Id找到该区下所有的镇 { $(item.towns).each(function (sy, town) { addMarker(town.los, town.las, town.value, town.name); }); } }); } }); $('.station_jcz').change(function () {//当切换乡镇站,进行绑定数据 $(".tab").empty(); var CurrentId = $(".station_jcz option:selected").val(); $(Areas).each(function (index, item) { if (item.id == CurrentId)//根据区域Id找到该区下所有的镇 { $(item.towns).each(function (sy, town) { addMarker(town.los, town.las, town.value, town.name); }); } }); }); }); function bindData() { //$(".station_jcz").empty().append(""); //$.each(infoList, function (key, value) { // var station = value[0].station; // var name = station[1]; // var longitude = station[3]; // var latitude = station[4]; // if (longitude == "" && latitude == "") return; // // mkjson = value[0];//json // $(".station_jcz").append(""); //}); $(".station_jcz").empty(); //把五个区显示到下拉框中 $(Areas).each(function (index, item) { $(".station_jcz").append(""); }); } function addMarker(longitude, latitude, index, geocname) { mkjson = infoList[index][0]; var name = geocname; var rain = mkjson.rain; var t2mm = mkjson.t2mm; var clct = mkjson.clct; //创建信息窗口 var sContent7 = new Array(); sContent7.push("
"); sContent7.push("
" + name + "
"); sContent7.push(""); sContent7.push(""); sContent7.push(""); var curr_date = new Date(); var strtI = 3;//去除前一天4小时 预报时间为世界时前一天12点,+8小时才还是昨天20点,再加4才是北京时间的今天00点 var iend = strtI + 24; for (var dayi = 1; dayi < 4; dayi++) { var mint = 0; var maxt = 0; var weatherStatus_array = new Array(); for (var i = strtI; i < iend; i += 3) { var _rain = parseFloat(rain[i]); if (_rain > 0) { var _rain_tem = parseFloat(_rain - rain[i]).toFixed(1); _rain = _rain_tem <= 0 ? _rain : _rain_tem; } else _rain = 0; var _clect = Math.ceil(clct[i]); if (_rain > 0) _clect = 11; var t2mmTempMin = Math.floor(t2mm[i]); if (mint == 0) mint = t2mmTempMin; mint = t2mmTempMin < mint ? t2mmTempMin : mint; var t2mmTempMax = Math.ceil(t2mm[i]); if (maxt == 0) maxt = t2mmTempMax; maxt = t2mmTempMax > maxt ? t2mmTempMax : maxt; weatherStatus_array.push(_clect); } var weathert = getMaxValue(weatherStatus_array); var weathert_name = weatherStatus[weathert][0]; var weathert_img = weatherStatus[weathert][1]; sContent7.push(""); strtI = iend; iend = strtI + 24; curr_date.setDate(curr_date.getDate() + 1); } sContent7.push("
日期天气最低气温(℃)最高气温(℃)
" + curr_date.Format('MM月dd日') + "" + weathert_name + "" + mint + "" + maxt + "
"); sContent7.push("
"); $(".tab").append(sContent7.join("")); }