// javascript document $(window).resize(function() {}); $(document).ready(function(){ //var isie = /msie/.test(navigator.useragent.tolowercase()); var ie8=!$.support.leadingwhitespace; $("#in_slide").slide({titcell:".hd ul",maincell:".bd ul",autopage:true,effect:"fold",autoplay:true,trigger:"click",delaytime:1000,intertime:4000}); if($(".notice .bd li").length>1){ $(".notice .bd ul > style").remove(); $(".notice").slide({maincell:".bd ul", autopage:true, effect:"toploop", autoplay:true, delaytime:700, opp:false}); } $("#picnews").slide({titcell:".hd ul",maincell:".bd ul",autopage:true,effect:"fold",autoplay:true,trigger:"click"}); var fixnavtop=550; $(window).scroll(function () { if ($(window).scrolltop() > fixnavtop) { $(".fixnav").addclass("fixed"); } else { $(".fixnav").removeclass("fixed"); } }); var newsboxul = $(".newsbox > ul"); $(".newsbox h3 i").click(function(){ $(this).parent().find("i").removeclass("cur"); $(this).addclass("cur"); var i = $(this).index(); $(this).parent().parent().find("ul").css('display','none'); $(this).parent().parent().find("ul").eq(i).stop(true,false).fadein(); }); $(".servicebox .sa li").hover(function(){ scli = $(".servicebox .sa li").index($(this)); $(".servicebox .sc li").eq(scli).stop(true,false).fadein("slow"); $(this).addclass("cur"); },function(){ $(".servicebox .sc li").eq(scli).stop(true,false).fadeout("fast"); $(this).removeclass("cur"); }); $(".servicebox .sc li").hover(function(){ $(this).stop(true,false).fadein("slow"); $(".servicebox .sa li").eq(scli).addclass("cur"); },function(){ $(".servicebox .sc li").stop(true,false).fadeout("slow"); $(".servicebox .sa li").removeclass("cur"); }); $(".map").append(mapbtn);//生成地图图例切换按钮 var map_l_on=true;//左侧图表区缩进。 function show_map_l(){ map_l_on=true; $("#map_l").stop(true,false).animate({left:"0"}); $(".mapslide").stop(true,false).show().animate({left:"270px"},function(){$(".map").css({overflow:"visible"});}).addclass("on"); } function hide_map_l(times){ map_l_on=false; $(".map").css({overflow:"hidden"}); $("#map_l").stop(true,false).animate({left:"-270px"}); $(".mapslide").stop(true,false).animate({left:"0"}).removeclass("on");; } $(".mapslide").click(function(){ if(map_l_on){ hide_map_l(); }else{ show_map_l(); } }); require.config({ paths: { echarts: jspath }, packages: [ { name: 'bmap', location: jspath, main: 'bmap' } ] }); require( [ 'echarts', 'bmap', 'echarts/chart/bar', 'echarts/chart/line', 'echarts/chart/map' ], function (echarts, bmapextension) { if(ie8){//ie8 var map = new bmap.map("map_main"); }else{ var bmapext = new bmapextension($('#map_main')[0], bmap, echarts,{ minzoom:5,maxzoom:6, enablemapclick: false }); var map = bmapext.getmap(); } //特高压线条样式 var convertlinedata = function (n) { var mydata = linedatatgy[n]; var ldata = []; for (var j = 0; j < mydata.length; j++) { for (var i = 0; i < mydata[j][0].length-1; i++) { ldata.push([{name:mydata[j][0][i]},{name:mydata[j][0][i+1],value:mydata[j][1]}]); } } return ldata; } //特高压样式设定 var effect = { show: true, scalesize: require('zrender/tool/env').canvassupported ? 1 : 2, period: 50, // 运动周期,无单位,值越大越慢 color: 'rgba(255,255,255,0.5)', shadowcolor: 'rgba(255,255,255,1)', shadowblur : 10 }; function itemstyle(idx) { return { normal: { color:'rgba(30,144,255,0)', borderwidth:2, linestyle: { type: ['solid','solid','dashed','dashed'][idx] }, label: { show: false, formatter: null, textstyle: {fontsize: 10} } } } }; option0 = { color: linecolor_a, legend:{ show:true, orient: 'vertical',//vertical, horizontal x:'right', y:360, padding:15, itemgap: 6, selectedmode:'single', data: [{name:'在运建成交流工程',icon : 'line'}, {name:'在运建成直流工程',icon : 'line'}, {name:'核准在建交流工程',icon : 'image://'+jspath+btnicon[2]}, {name:'核准在建直流工程',icon : 'image://'+jspath+btnicon[3]}, {name:'显示全部',icon : 'bar'}], textstyle : { color: '#000', fontsize:12 } }, series : [ { name: '在运建成交流工程', type: 'map', maptype: 'none', roam: false,//scale move hoverable: false, clickable: false, itemstyle:{ normal:{ bordercolor:'rgba(255,255,255,1)', borderwidth:0.5, label:{ show:false, position:'right', formatter: '{b}' }, areastyle:{ color: 'rgba(194,204,203,0.8)' } }, emphasis: { label:{show:false,position:'top'}, areastyle:{ color: 'rgba(194,204,203,1)' } } }, data:[], markline : { symbol: ['circle', 'arrow'], symbolsize : 0, effect : effect, clickable: true, itemstyle : itemstyle(0), smooth:true, smoothness:0, data : convertlinedata(0) } }, { name: '在运建成直流工程', type: 'map', maptype: 'none', data:[], markline : { symbol: ['circle', 'circle'], symbolsize : 0, effect : effect, clickable: true, itemstyle : itemstyle(1), smooth:true, smoothness:0, data : convertlinedata(1) } }, { name: '核准在建交流工程', type: 'map', maptype: 'none', data:[], markline : { symbol: ['circle', 'circle'], symbolsize : 0, effect : effect, clickable: true, itemstyle : itemstyle(2), smooth:true, smoothness:0, data : convertlinedata(2) } }, { name: '核准在建直流工程', type: 'map', maptype: 'none', data:[], markline : { symbol: ['circle', 'circle'], symbolsize : 0, effect : effect, clickable: true, itemstyle : itemstyle(3), smooth:true, smoothness:0, data : convertlinedata(3) }, geocoord: geodata[0] } ] }; function addmarker(point2, n, j){ if(n==7){//北京总部图标变大 iconsizex=24; iconsizey=24; }else if(n==9 || n==10){//清洁能源 iconsizex=42; iconsizey=24; }else if(n==11 || n==12){//充电桩 iconsizex=7 + math.round(pointdata[n][j]['value']/2000);; iconsizey=iconsizex; }else{ iconsizex=20; iconsizey=20; } //console.log(iconsizex); point_a[n][j] = new bmap.marker(point2, {icon: new bmap.icon(jspath + myicon[n], new bmap.size(iconsizex, iconsizey), {imagesize:new bmap.size(iconsizex, iconsizey)} ) }); map.addoverlay(point_a[n][j]); if(n<4){//特高压显示标签 var label = new bmap.label(pointdata[n][j]['name'],{offset:new bmap.size(20,0)}); label.setstyle({ color : linecolor_a[n], fontsize : "12px", backgroundcolor :"0", border :"0", fontweight :""}); //point_a[n][j].setlabel(label); }else{//其他显示鼠标提示 if(n>10){//充电桩弹出信息处理 point_a[n][j].addeventlistener("mouseover", function(evt){ var pt = new bmap.point(evt.point.lng,evt.point.lat); map.openinfowindow(infowindow,pt); //开启信息窗口 infowindow.settitle(""); infowindow.setcontent(pointdata[n][j]['name']+"
充电桩:"+pointdata[n][j]['value']+" 个"); }); }else if(n>7){//清洁能源弹出信息处理 point_a[n][j].addeventlistener("mouseover", function(evt){ var pt = new bmap.point(evt.point.lng,evt.point.lat); map.openinfowindow(infowindow,pt); //开启信息窗口 infowindow.settitle(""); infowindow.setcontent(pointdata[n][j]['name']+"
"+pointdata[n][j]['value']); }); }else{ point_a[n][j].addeventlistener("mouseover", function(evt){ var pt = new bmap.point(evt.point.lng,evt.point.lat); map.openinfowindow(infowindow,pt); //开启信息窗口 infowindow.settitle(""); infowindow.setcontent(pointdata[n][j]['value']); }); point_a[n][j].addeventlistener("click", function(evt){ showpoint(n, j) //alert(n+"-"+j); }); } point_a[n][j].addeventlistener("mouseout", function(){ map.closeinfowindow(infowindow,point); }); } } function creatmarker(n){ var mydata = pointdata[n]; for (var j = 0; j < mydata.length; j++) { myname=mydata[j]['name']; x=geodata[n][myname][0]; y=geodata[n][myname][1] addmarker(new bmap.point(x,y),n,j); } } function removemarker(n){ for (var j = 0; j < point_a.length; j++) { for (var i = 0; i < point_a[j].length; i++) { map.removeoverlay(point_a[j][i]); } } } function addline(pointarray,n,j){ line_a[n][j] = new bmap.polyline(pointarray, {strokecolor:linecolor_a[n], strokestyle:linestyle_a[n], strokeweight:2, strokeopacity:1,enableclicking:true}); map.addoverlay(line_a[n][j]); line_a[n][j].addeventlistener("mouseover", function(evt){ line_a[n][j].setstrokecolor("red"); var pt = new bmap.point(evt.point.lng,evt.point.lat); map.openinfowindow(infowindow,pt); //开启信息窗口 infowindow.settitle(''); infowindow.setcontent(hoverdata[n][j]); }); line_a[n][j].addeventlistener("mouseout", function(){ line_a[n][j].setstrokecolor(linecolor_a[n]); map.closeinfowindow(infowindow,point); }); line_a[n][j].addeventlistener("click", function(evt){ var linen=0; for(var i =0;i<=n;i++){ for(var k=0;k0){ var mychart1 = echarts.init(document.getelementbyid("map_lt")); var mychart2 = echarts.init(document.getelementbyid("map_lc")); var mychart3 = echarts.init(document.getelementbyid("map_lb")); } var startpoint = {x: 104.842143,y: 36.386702}; var point = new bmap.point(startpoint.x, startpoint.y); map.centerandzoom(point, 5); map.enablescrollwheelzoom(true); map.disableinertialdragging(); map.setmapstyle({ stylejson: mapstyle }); if(!ie8){ var container = bmapext.getechartscontainer(); var mychart = bmapext.initecharts(container); //bmapext.setoption(option0,true); } $(".mapbox h3 s").click(function(){ mapli = $(".mapbox h3 s").index($(this)); $(this).parent().find("s").removeclass("cur"); $(this).addclass("cur"); $(".maptitle").text(titledata[mapli]); $(".mapbtn").show(); $(".mapbtn li").hide().eq(mapli).show(); $(".mapbtn li a").removeclass("off"); $(".mapbtn li a:last-child").addclass("off"); $(".mapbtn li a").last().addclass("off"); //左侧柱状图显示控制 $("#map_l").css({left:"-270px"}); hide_map_l(); $(".mapslide").css({left:"0"}).removeclass("on"); mychart1.clear(); mychart2.clear(); mychart3.clear(); //删除特高压线路 //map.clearoverlays(); removeline(); removemarker(); removehighway(); //生成对应地图数据 if(!ie8){ mychart.clear(); //mychart.dispose(); } $(".mapbtn").removeclass("mbl"); if(mapli==0){//特高压 if(!ie8){ bmapext.setoption(option0,true); $(".mapbtn").hide(); var ecconfig = require('echarts/config'); mychart.on(ecconfig.event.legend_selected, function (param){ var selected = param.selected; removeline(); removemarker(); if (selected['显示全部']) { $(".mapbox h3 s.cur").click(); }else if(selected['在运建成交流工程']){ creatmarker(0); creatline(0); }else if(selected['在运建成直流工程']){ creatmarker(1); creatline(1); }else if(selected['核准在建交流工程']){ creatmarker(2); creatline(2); }else if(selected['核准在建直流工程']){ creatmarker(3); creatline(3); } }); } var startpoint = {x:105, y:36}; var minzoom=5; var maxzoom=6; var curzoom=5; creatmarker(0); creatmarker(1); creatmarker(2); creatmarker(3); creatline(0); creatline(1); creatline(2); creatline(3); //左侧柱状图控制 show_map_l(); mychart1.setoption(convertoption(5)); mychart2.setoption(convertoption(6)); mychart3.setoption(convertoption(7)); }else if(mapli==1){//国际业务 var startpoint = {x:39.642123, y:18.15967}; var minzoom=3; var maxzoom=4; var curzoom=3; creatmarker(4); creatmarker(5); creatmarker(6); creatmarker(7); hide_map_l(); $(".mapslide").hide(); $(".mapbtn").addclass("mbl"); }else if(mapli==2){//清洁能源 var startpoint = {x:105, y:36}; var minzoom=4; var maxzoom=6; var curzoom=5; creatmarker(8); creatmarker(9); creatmarker(10); //左侧柱状图控制 show_map_l(); mychart1.setoption(convertoption(0)); mychart2.setoption(convertoption(1)); mychart3.setoption(convertoption(2)); }else if(mapli==3){//车联网 var startpoint = {x:108, y:35}; var minzoom=4; var maxzoom=6; var curzoom=5; creathighway(); $(".mapbtn li:eq(3) div").hide().eq(0).show(); $(".mapbtn li:eq(3) div s").removeclass("off"); //左侧柱状图控制 show_map_l(); mychart1.setoption(convertoption2(3)); mychart2.setoption(convertoption2(4)); mychart3.setoption(option5); } // 初始化地图 map.setminzoom(minzoom); map.setmaxzoom(maxzoom); point = new bmap.point(startpoint.x, startpoint.y); map.centerandzoom(point, curzoom); }); $(".mapbtn li:eq(0) a").click(function(){ removeline(); removemarker(); removehighway(); $(".mapbtn li:eq(0) a").addclass("off"); num=$(this).index(); if (num>=4) { $(".mapbox h3 s.cur").click(); }else{ creatmarker(num); creatline(num); $(".mapbtn li:eq(0) a").eq(num).removeclass("off"); } }); $(".mapbtn li:eq(1) a").click(function(){ removeline(); removemarker(); removehighway(); $(".mapbtn li:eq(1) a").addclass("off"); num=$(this).index(); if (num>=3) { $(".mapbox h3 s.cur").click(); }else{ creatmarker(num+4); creatmarker(7); $(".mapbtn li:eq(1) a").eq(num).removeclass("off"); } }); $(".mapbtn li:eq(2) a").click(function(){ removeline(); removemarker(); removehighway(); $(".mapbtn li:eq(2) a").addclass("off"); num=$(this).index(); if (num>=3) { $(".mapbox h3 s.cur").click(); }else{ creatmarker(num+8); $(".mapbtn li:eq(2) a").eq(num).removeclass("off"); } }); $(".mapbtn li:eq(3) a").click(function(){ removeline(); removemarker(); removehighway(); $(".mapbtn li:eq(3) a").addclass("off"); $(this).removeclass("off"); $(".mapbtn li div s").removeclass("off"); num=$(".mapbtn li:eq(3) a").index($(this)); $(".mapbtn li:eq(3) div").hide().eq(num).show(); if (num==0) { var startpoint = {x:108, y:35}; creathighway(); $(".maptitle").text("全国高速充电网络示意图"); }else{ var startpoint = {x:106, y:32}; creatmarker(11); creatmarker(12); $(".maptitle").text("全国城市充电网络示意图"); } var point = new bmap.point(startpoint.x, startpoint.y); var curzoom=5; map.centerandzoom(point, curzoom); }); $(".mapbtn li div s").click(function(){ removeline(); removemarker(); removehighway(); num=$(".mapbtn li div s").index($(this)); $(".mapbtn li div s").addclass("off"); $(this).removeclass("off"); if (num==0) { creathighway(0); }else if(num==1){ creathighway(1); }else if(num==2){ creathighway(2); }else if(num==3){ creatmarker(11); }else if(num==4){ creatmarker(12); } }); //显示第一个地图数据 $(".mapbox h3 s").eq(0).click(); } ); });