谷歌地图setCenter(),v3,点击元素,使用jQuery

时间:2011-05-28 09:54:43

标签: javascript jquery google-maps google-maps-api-3

当我使用此代码时

<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);
});

当我点击中心为蓝色时,标记位于左上角,而不是可拖动... 有什么不对?

1 个答案:

答案 0 :(得分:4)

当你需要传递两个字符串时,你实际上在做什么就是将一个字符串传递给LatLnglatlon属性中的逗号不会被JavaScript解释为您的想法,它只会被视为字符串的一部分。

您需要将58.55801847109299,11.244826413745159拆分为两个变量(例如58.5580184710929911.244826413745159)并将其分别传递给LatLng。 e.g。

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);

这是未经测试的代码,但希望你能得到这个想法。