function dataTest(){ var kpiId = getKpiCheckedValuesStringId(); if(getKpiCheckedValuesStringId() == "" || getKpiCheckedValuesStringId() == null){ kpiId = 0; } var test = getDataSourceCheckedValuesString() + "&" + // "归属或来访地市:"+ getBelongingOrVisitingCheckedValuesString()+"&"+ // "渠道:" getChannelCheckedValuesString()+ "&" + //"业务:"+ getBusinessCheckedValuesId()+ "&" + //"时间范围:"+ getPeriodString() +"&"+ //指标 kpiId; $.ajax({ type: "GET", contentType : 'application/json', url: '../AnalysisSupport/ServiceFeature/select/'+test+"/"+Date.parse(new Date()), //取值的页面 dataType : 'text', async: true , beforeSend: function(data) {}, success: function(data){ //alert(data); $("#mapData").attr("value",data); Map(); } }); } function Map() { /* * 配置Raphael生成svg的属性 */ $("#map").html(""); Raphael.getColor.reset(); var width=iframeWidth*0.6; /* var width = 465;*/ var height=480; var R = Raphael("map", width*1.42, height+20); //大小与矢量图形文件图形对应; var trans = [ "s", width / 500, height / 470, width/ 300, height / 200 ]; //t是平移,r是旋转,s是缩放,m是矩阵 var current = null; var textAttr = { "fill": "#000", "font-size": "14px", "cursor": "pointer" }; var textAttr1 = { "fill": "#7DC8EF", "font-size": "14px" }; var textAttr2 = { "fill": "#43AFE0", "font-size": "14px" }; var textAttr3 = { "fill": "#008FCB", "font-size": "14px" }; //调用绘制地图方法 paintMap(R); $('body').append("<div id='tiplayer' style='display:none;'></div>"); var tiplayer = $('#tiplayer'); //数据库中的值赋给data var data = $("#mapData").val(); for(var i=0;i<data.length;i++){ //数据单引号变双引号 if(data=='\"'){ data=data.replace("\"","\'"); } } data=eval("("+data+")"); var num = 0; if(data[0] != null){ num = parseFloat(data[0]) - parseFloat(data[1]); } var num1 = Math.ceil(num/3).toString().length; var num2 = Math.ceil((num/3)*2).toString().length; console.log("num:"+num); R.text((60+num1*4.5), 428, Math.ceil(num/3)+" 以下").attr(textAttr1); R.text((50+(num1+num2)*4.5), 458, Math.ceil(num/3)+" - "+Math.ceil((num/3)*2)).attr(textAttr2); R.text((60+num2*4.5), 488, Math.ceil((num/3)*2)+" 以上").attr(textAttr3); for (var state in china) { //分省区域着色 china[state]['path'].color = Raphael.getColor(0.9); china[state]['path'].transform(trans); //s为放缩 (function (st, state) { //***获取当前图形的中心坐标 var xx = st.getBBox().x + (st.getBBox().width / 2); var yy = st.getBBox().y + (st.getBBox().height / 2); //***修改部分地图文字偏移坐标 switch (china[state]['name']) { case "钓鱼岛": xx += 10; yy -= 15; break; case "黄岩岛": xx += 15; yy -= 15; break; case "1000万以下": xx += 30; break; case "江苏": xx += 5; yy -= 10; break; case "河北": xx -= 10; yy += 20; break; case "天津": xx += 20; yy += 10; break; case "上海": xx += 15; break; case "广东": yy -= 10; break; case "澳门": yy += 10; break; case "香港": xx += 20; yy += 5; break; case "甘肃": xx -= 40; yy -= 30; break; case "陕西": xx += 5; yy += 20; break; case "内蒙": xx -= 15; yy += 65; break; default: } ///////不同颜色表示不同数据量 for(var t=3;t<data.length;t=t+2){ var name = data[t-1]; if(parseFloat(data[1]) <= data[t] && data[t] < Math.ceil(num/3)){ china[name]['path'].animate({ fill: "#7DC8EF", stroke: "#fff" }); china[name]['path'].color = "#7DC8EF"; china[name]['isHover'] = true; }else if(Math.ceil(num/3) <= data[t] && data[t] < Math.ceil((num/3)*2)){ console.log("china"+china); console.log("name:"+name); console.log("value:"+china[name]); china[name]['path'].animate({ fill: "#43AFE0", stroke: "#fff" }); china[name]['path'].color = "#43AFE0"; china[name]['isHover'] = true; }else{ /**/ china[name]['path'].animate({ fill: "#008FCB", stroke: "#fff" }); china[name]['path'].color = "#008FCB"; china[name]['isHover'] = true; } } //////////////鼠标事件开始 //***写入地名,并加鼠标停留事件,部分区域太小,增加对文字的停留事件 china[state]['text'] = R.text(xx, yy, china[state]['name']).attr(textAttr).hover(function (e) { current = state; for(var i=1;i<data.length;i=i+2){ if(data[i-1] == china[current]['name']){ china[current]['path'].animate({ transform: trans, fill: "gray", stroke: "#fff" }, 50, "elastic"); tiplayer.html(china[current]['name']+"<br />"+ document.getElementById("BelongOrVisitingDiv").innerHTML+"地业务量为:"+data[i]).css({ 'opacity': '0.85', 'top': (e.pageY + 10) + 'px', 'left': (e.pageX + 10) + 'px' }).fadeIn('normal'); } } }, function () { if (tiplayer.is(':animated')) tiplayer.stop(); tiplayer.hide(); if("" != china[current]['name']){ current && china[current]['path'].animate({ transform: trans, fill:china[current]['isHover'] ? china[current]['path'].color : "#daecf7", stroke: "#fff" }, 50, "elastic"); } }).click(function (e) { for(var i=1;i<data.length;i=i+2){ if(data[i-1] == china[current]['name']){ clickMap(); } } }); //鼠标样式 $(st[0]).css('cursor', 'pointer'); //移入事件,显示信息 $(st[0]).mouseover(function (e) { //在IE中使用jquery-1.7.2.js不支持hover事件 current = state; for(var i=1;i<data.length;i=i+2){ if(data[i-1] == china[current]['name']){ china[current]['path'].animate({ transform: trans, fill: "gray", stroke: "#fff" }, 50, "elastic"); tiplayer.html(china[current]['name']+"<br />"+ document.getElementById("BelongOrVisitingDiv").innerHTML+"地业务量为:"+data[i]).css({ 'opacity': '0.85', 'top': (e.pageY + 10) + 'px', 'left': (e.pageX + 10) + 'px' }).fadeIn('normal'); } } }).mouseout(function () { if (tiplayer.is(':animated')) tiplayer.stop(); tiplayer.hide(); if("" != china[current]['name']){ current && china[current]['path'].animate({ transform: trans, fill:china[current]['isHover'] ? china[current]['path'].color : "#daecf7", stroke: "#fff" }, 50, "elastic"); } }).click(function (e) { if("" != china[current]['name']){ for(var i=1;i<data.length;i=i+2){ if(data[i-1] == china[current]['name']){ clickMap(); } } }else{ click(); } }); //点击事件 function clickMap(){ document.getElementById("provinceLabel").innerHTML=china[state]['name']; document.getElementById("ProvinceDiv").innerHTML=china[state]['name']; document.getElementById("ProvinceDiv").title = china[state]['value']; document.getElementById("ProvinceDiv1").innerHTML=china[state]['name']; document.getElementById("ProvinceDiv1").title = china[state]['value']; document.getElementById("ProvinceDiv2").innerHTML=china[state]['name']; document.getElementById("ProvinceDiv2").title = china[state]['value']; document.getElementById("str").value=getDataSourceCheckedValuesString() + "&" + getBelongingOrVisitingCheckedValuesString()+"&"+ getChannelCheckedValuesString()+ "&" + getBusinessCheckedValuesId()+ "&" +getPeriodString()+ "&" + document.getElementById("ProvinceDiv").innerHTML+"&kpiTag="+kpiAllId; for(var i=0;i<$('iframe').length;i++){ if($('iframe').eq(i).parent().find('.loading').length>0){ $('iframe').eq(i).parent().find('.loading').fadeIn("fast"); //显现loading图片 $('iframe').eq(i).load( function(){ $(this).parent().find('.loading').fadeOut("fast"); });//隐藏loading图片 } } $("#eee").attr("src",document.getElementById("ywtz_test1").value+"&CityTag="+getBelongingOrVisitingCheckedValuesString()+"&BusinessTag="+businessAllId+"&ChannelTag="+getChannelCheckedValuesString()+"&DataSourceTag="+getDataSourceCheckedValuesString()+"&PeriodTag="+getPeriodString()+"&ProvinceTag="+china[state]['value']+"&kpiTag="+kpiAllId); /*业务办理人数统计*/ $("#ywtz_yw").attr("src", document.getElementById("ywtz_test2").value+"&ProvinceTag="+china[state]['value']+"&CityTag="+getBelongingOrVisitingCheckedValuesString()+"&BusinessTag="+businessAllId+"&ChannelTag="+getChannelCheckedValuesString()+"&DataSourceTag="+getDataSourceCheckedValuesString()+"&PeriodTag="+getPeriodString()+"&kpiTag="+kpiAllId); $("#ywtz_llq").attr("src", document.getElementById("ywtz_llq1").value+"&ProvinceTag="+china[state]['value']+"&CityTag="+getBelongingOrVisitingCheckedValuesString()+"&BusinessTag="+businessAllId+"&ChannelTag="+getChannelCheckedValuesString()+"&PeriodTag="+getPeriodString()+"&kpiTag="+kpiAllId); /*地市业务量*/ table(); //记录日志 publicLog("ywtzPro"); } //点击空白地方,返回全国数据 function click(){ document.getElementById("provinceLabel").innerHTML="全国"; document.getElementById("ProvinceDiv").innerHTML="全国"; document.getElementById("ProvinceDiv").title = ""; document.getElementById("ProvinceDiv1").innerHTML="全国"; document.getElementById("ProvinceDiv1").title = ""; document.getElementById("ProvinceDiv2").innerHTML="全国"; document.getElementById("ProvinceDiv2").title = ""; document.getElementById("str").value= getDataSourceCheckedValuesString() + "&" + getBelongingOrVisitingCheckedValuesString()+"&"+ getChannelCheckedValuesString()+ "&" + businessAllId+ "&" + getPeriodString()+"&"+kpiAllId; for(var i=0;i<$('iframe').length;i++){ if($('iframe').eq(i).parent().find('.loading').length>0){ $('iframe').eq(i).parent().find('.loading').fadeIn("fast"); //显现loading图片 $('iframe').eq(i).load( function(){ $(this).parent().find('.loading').fadeOut("fast"); });//隐藏loading图片 } } $("#eee").attr("src",document.getElementById("ywtz_test1").value+"&CityTag="+getBelongingOrVisitingCheckedValuesString()+"&BusinessTag="+businessAllId+"&DataSourceTag="+getDataSourceCheckedValuesString()+"&PeriodTag="+getPeriodString()+"&kpiTag="+kpiAllId); $("#ywtz_yw").attr("src", document.getElementById("ywtz_test2").value+"&CityTag="+getBelongingOrVisitingCheckedValuesString()+"&BusinessTag="+businessAllId+"&ChannelTag="+getChannelCheckedValuesString()+"&DataSourceTag="+getDataSourceCheckedValuesString()+"&PeriodTag="+getPeriodString()+"&kpiTag="+kpiAllId); $("#ywtz_llq").attr("src", document.getElementById("ywtz_llq1").value+"&CityTag="+getBelongingOrVisitingCheckedValuesString()+"&BusinessTag="+businessAllId+"&ChannelTag="+getChannelCheckedValuesString()+"&PeriodTag="+getPeriodString()+"&kpiTag="+kpiAllId); table(); //记录日志 publicLog("ywtz"); } //////////鼠标事件结束 ////////////数据库取值结束 R.safari(); }) (china[state]['path'], state); $("#map").parent().find('.loading').fadeOut("fast") } }