-1
google.maps.event.addListener(map, 'click', function(event){ 
    alert("Latitude: "+event.latLng.lat()+" "+", longitude:"+event.latLng.lng()); 
}); 

このコードは、Googleマップをクリックすると、私たちに長い時間を与えます。 Google独自のgeojsonレイヤーがある場合は動作しません.Googleマップ上にポリゴンのレイヤーがあり、そのポリゴンをクリックすると上記のコードは機能しません。私たち自身のgeojson層があるときにGoogleマップから緯度を長く得る方法?

答えて

0

クリックイベントリスナーをデータに追加します。データレイヤーをマウスイベントを受け入れないように設定します(clickable:false)。

データ層の上にセットイベントリスナー:clickable: false

google.maps.event.addListener(map, 'click', function(event) { 
    alert("Latitude: " + event.latLng.lat() + " " + ", longitude: " + event.latLng.lng()); 
    }); 
    // Set mouseover event for each feature. 
    map.data.addListener('click', function(event) { 
    alert("Latitude: " + event.latLng.lat() + " " + ", longitude: " + event.latLng.lng()); 
    }); 

proof of concept fiddle

設定されているデータ層:

map.data.setStyle(function(feature) { 
    var color = 'gray'; 
    var opacity = 0.45; 

    return /** @type {google.maps.Data.StyleOptions} */ ({ 
    fillColor: color, 
    strokeColor: "black", 
    strokeWeight: 2, 
    strokeOpacity: opacity, 
    fillOpacity: opacity, 
    clickable: false 
    }); 
}); 

proof of concept fiddle

+0

おかげで多く、それが働きました – user2381569

関連する問題