百度地图点击省高亮问题,为什么有些省点了没有改变颜色?

js代码如下

var map = new BMap.Map("map"); 
map.centerAndZoom(new BMap.Point(116.403765, 39.914850), 5); 
var stdMapCtrl = new BMap.NavigationControl({type: BMAP_NAVIGATION_CONTROL_SMALL}) 
map.addControl(stdMapCtrl); 
map.enableScrollWheelZoom(); 
map.enableContinuousZoom(); 

var datas = [
    "广西-#C8C1E3", "广东-#FBC5DC", "湖南-#DBEDC7", "贵州-#E7CCAF", "云南-#DBEDC7",
    "福建-#FEFCBF", "江西-#E7CCAF", "浙江-#C8C1E3", "安徽-#FBC5DC", "湖北-#C8C1E3",
    "河南-#DBECC8", "江苏-#DBECC8", "四川-#FCFBBB", "海南省-#FCFBBB", "山东-#FCFBBB", "辽宁-#FCFBBB",
    "新疆-#FCFBBB", "西藏-#E7CCAF", "陕西-#E7CCAF", "河北-#E7CCAF", "黑龙江-#E7CCAF", "宁夏-#FBC5DC",
    "内蒙古自治区-#DBEDC7", "青海-#DBEDC7", "甘肃-#C8C1E3", "山西-#FBC5DC", "吉林省-#C8C1E3",
    "北京-#FBC5DC", "天津-#C8C1E3", "上海-#FCFBBB", "重庆市-#FBC5DC", "香港-#C8C1E3"
];

for(var i=0; i < datas.length; i++) { 
    getBoundary(datas[i]); 
} 

function getBoundary(data){ 
    var bdary = new BMap.Boundary(); 
    bdary.get(data.split("-")[0], function(rs){ 

        var color = data.split("-")[1]; 

        var count = rs.boundaries.length;  
        for(var i = 0; i < count; i++){ 
            var ply = new BMap.Polygon(rs.boundaries[i], {strokeWeight: 1, strokeOpacity:0.5,fillColor:color,strokeColor: "#000000"}); 
            map.addOverlay(ply);  
         
            ply.addEventListener("click", function (e) {
                var latlng = e.point;
                var info = new BMap.InfoWindow(name + " " + latlng.lat + "," + latlng.lng, {width:220});
                map.openInfoWindow(info, latlng);
             
                高亮显示鼠标点击的省
                ply.setFillColor("blue");
               
            });

        } 
           
    }); 
} 
阅读 3.3k
1 个回答

ply.setFillColor("blue");改成this.setFillColor("blue");

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题