我有一個問題。 我一直在尋找一種方法來獲得標記上的onclick
函數。 該標記由位置數組構成。 但它似乎並沒有使onclick
功能,如果它只能在最後製作的標記上起作用。在Google地圖標記陣列上獲取onclick函數
請幫助我嗎?
這是陣列
var POIArrayVisited = new Array(
new Array(52.3764, 4.90245, "De Schreierstoren", "POIone"),
new Array(52.3727, 4.90036, "De Waag", "POItwo"),
new Array(52.3737, 4.90012, "Het Zustersklooster", "POIthree"),
new Array(52.3750, 4.89939, "Onze lieve heer op solder", "POIfour"),
new Array(52.3741, 4.89808, "Belle het standbeeld", "POIfive"));
然後創建標記:
// voer de coordinaten van de niet bezochte poi in
// zet markers voor elk POI
var i = 0;
for (i = 0; i < POIArrayVisited.length; i++) {
var markerLatlng = new google.maps.LatLng(
POIArrayVisited[i][0], POIArrayVisited[i][1])
// Place a hit marker
markerVisited = new google.maps.Marker({
position: markerLatlng,
map: map,
icon: imageMarkerOld,
title: POIArrayVisited[i][2]
});
}
,然後將創建onclick
標記。
// For every POI
var i;
for (i = 0; i < POIArrayVisited.length; i++) {
var POIlinkVisited = POIArrayVisited[i][3];
var OpenPOI = POIlinkVisited;
google.maps.event.addListener(markerVisited, "click", function() {
//link and update cookie
document.cookie = "OpenPOI" + "=" + OpenPOI;
window.location.href = "poi.php";
});
}
我不明白我在做什麼錯
非常感謝您的回覆 我只剩下一個問題。 var OpenPOI看起來像這樣 'var OpenPOIVisited = POIArrayVisited [i] [3]; 「 但現在它會始終將數組作爲餅乾在過去的VAR ,而不是像 」標題:POIArrayVisited [I] [2]」 爲每個陣列標題 那麼,爲什麼它的變種工作,但是在新的google.maps中做的。marker 我該如何解決這個問題? –
我不是100%確定如果我瞭解您的問題,但不能將自定義對象設置爲Cookie值。您只能存儲原始數據,如字符串或整數。所以如果你想存儲一個對象(OpenPoi),你應該獨立存儲所有的值,並在獲取cookie時重建變量。 – Jules