2011-05-28 65 views
0

當我使用此代碼谷歌地圖setCenter(),V3,當點擊元素,用jQuery

<li latlon="58.55801847109299,11.244826413745159" class="point_on_map">Boviken, Hamburgö</li> 

這jQuery代碼:

$('.point_on_map').click(function(){ 
    var b = new google.maps.LatLng($(this).attr('latlon')); 
    map.setCenter(b); 
}); 

,當我點擊該中心是在藍色,並且標記位於左上角,並且不可拖動... 有什麼問題?

回答

4

實際上你在做什麼的時候需要傳遞一個字符串給LatLng。這個逗號在latlon屬性中沒有被JavaScript解釋,你是如何看待它的,它只是被看作是字符串的一部分。

您需要將58.55801847109299,11.244826413745159分成兩個變量(例如58.5580184710929911.244826413745159),並將它們分別傳遞給LatLng。例如

var latlon = $(this).attr('latlon'); 
var latlon_array = latlon.split(','); 
var lat = latlon_array[0]; 
var lon = latlon_array[1]; 
var b = new google.maps.LatLng(lat,lon); 

這是未經測試的代碼,但希望你明白了。