代码之家  ›  专栏  ›  技术社区  ›  ibrahim

当单击其他多段线时,如何停止将geojson polyline strokecolor更改为默认值?

  •  0
  • ibrahim  · 技术社区  · 7 年前

    我用javascript在谷歌地图上绘制了一个geojson文件。 geojson文件包含多条多段线(roads) 我已经使用下面的javascript代码设置了所有多段线的样式。

    Var myGeojsonLayer = new google.maps.Data();
    myGeojsonLayer.loadGeoJson('Local Geojson layer path');
    
    myGeojsonLayer.setStyle(function (feature) {
        return {
            strokeColor: 'green'
        };
    });
    

    我已经在多段线上注册了Click Listener。 单击折线时,我会更改其笔划颜色(从绿色变为红色)。但问题是,其他多段线(不点击) 还可以将其笔划颜色从绿色(即初始颜色)更改为 违约 颜色(黑色)。 如何解决这个问题,请帮帮我。

     myGeojsonLayer.addListener('click', function(event) {
    
       this.setStyle(function (feature) {
    
            if(  feature.getProperty('District') == 'Swat'  ){
                return {
                    strokeColor: 'red'                  
                };
            }
    
        });
    
     });
    
    1 回复  |  直到 7 年前
        1
  •  1
  •   Mohd Maaz Giri    7 年前

    您必须对折线的选择有特定的要求,这样颜色就可以进行特定的更改。

    click here