我已經設置了一些多邊形,把它們繪製在地圖上就好了。點擊時我也設法觸發console.log。但是,如何確定哪個多邊形實際被點擊?如何獲取點擊多邊形的引用? (谷歌地圖api v3)
正如你可以在我的示例代碼中看到的那樣,我將每個對象存儲在集合「lot」中,但是 - 單擊它們只會給我點擊的經緯度。我想我可能需要循環通過我的多邊形,並檢查點被點擊是否相交,從而找出它是哪個多邊形...有沒有更簡單的解決方案?
var lot = new google.maps.Polygon({
paths: me.area,
strokeColor: 'black',
strokeOpacity: 0.35,
strokeWeight: 1,
fillColor: fillcol,
fillOpacity: 0.35
});
lot.setMap(map);
var obj = {
'id':me.id,
'rented':me.rented,
'area':lot
};
google.maps.event.addListener(lot, 'click', function(event) {
console.log(event);
});
lots.push(lot);
原來的getPath()的工作就像一個魅力。 我沒有意識到我實際上已經獲得了點擊事件傳遞的多邊形引用,爲了將其與我存儲的「批次」匹配,我只是通過存儲的批次循環,並將this.getPath與other.getPath進行比較,如果它們匹配,我就知道哪個批次被點擊,現在可以顯示與這個特定對象有關的信息。 – Bisa
您可能必須等待幾個小時才能讓網站允許您這樣做,但如果可以的話,您應該將其作爲答案發布。 – Trott