2012-06-15 40 views
0

我有一個要求經度和緯度變量的panto標記函數。我有能力將聯繫人名稱作爲變量發送。通過標記獲取地圖上的標記的latlng

聯繫人名稱是我要平移到的標記的標記。我可以通過標籤獲取標記的經度和緯度嗎?

這是我啞劇功能

function pantoUser(lati,longi,i) 
{ 
    jQuery("#dispatcher").gmap3({ 
     action: 'panTo', 
     args:[new google.maps.LatLng(lati,longi)], 
     zoom: 7 
       }); 
       currentPoint = i; 
       jQuery("#dispatcher").css({ 
        cursor: 'pointer' 
       }); 
       jQuery('#markerTitle' + i + '').fadeIn({ 
        duration: 200, 
        queue: false 
       }).animate({ 
        bottom: "32px" 
       }, { 
        duration: 200, 
        queue: false 
       }); 
      jQuery("#target").stop(true, true).fadeIn(1200).delay(500).fadeOut(1200); 
       jQuery("#dispatcher").css({ 
        cursor: 'default' 
       }); 
       jQuery('#markerTitle' + i + '').stop(true, true).fadeOut(2000, function() { 
        jQuery("#dispatcher").css({ 
         bottom: "0" 
        }) 
       jQuery("#target").stop(true, true).fadeIn(1200).delay(500).fadeOut(1200); 
       }); 

}

我在想這樣的事情?

function locateLastSpeaker(name) { 
var lati = SOMEHOW GET IT 
var longi = SOMEHOW GET IT 
pantoUser(lati,longi,1) 

}試圖鄧肯的解決方案後

編輯!

var stuMarkers = {}; 

function addMarker(i, lati, longi, id, name, state, datestring) { 
var placename = name; 
stuMarkers[placename].lat = lati; 
stuMarkers[placename].lng = longi; 
    $('#dispatcher').gmap3(
     { action: 'addMarker', ....etc 
+0

當然,但你必須包括一些代碼來獲得一些幫助。 –

+0

對不起,加了一些 –

回答

1

而不是像巴里建議的陣列,而是一個對象,鍵入名稱。這樣你甚至不必循環。

var stuMarkers = {}; // global variable outside of any function 

// loop creating your markers 

function addMarker(i, lati, longi, id, name, state, datestring) { 
var placename = name; 
stuMarkers[placename] = {}; 
stuMarkers[placename].lat = lati; 
stuMarkers[placename].lng = longi; 
stuMarkers[placename].i = i; 
... 
} 


function locateLastSpeaker(name) { 
    pantoUser(stuMarkers[name].lat,stuMarkers[name].lng,stuMarkers[name].i); 
} 
+0

不錯,但不是「= new google.maps.LatLng(x,y);」我可以將拉特和長分別存儲在對象中嗎?然後我不必改變我的PanTo功能。 –

+0

當然是...更新的答案顯示 – duncan

+0

看起來不錯,但我有一個問題...我已經完成了上述我已經添加了代碼圍繞我的添加標記功能。由於某些原因,「stuMarkers [地名] .lat = lati;」線停止我的標記添加。 看到我上面的編輯 –

0

保留對每個標記的引用 - 可能在數組中。

當您想要查找特定標記時,請循環該數組,然後查找特定標記。

然後做你想做的。