Google Map API v3 - map.fitBounds(bounds)导致超出最大调用堆栈大小错误

时间:2013-08-15 07:52:39

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

我正在使用Google Maps API V3,从数组中绘制标记。我试图使中心和缩放到标记。我遇到的问题是,一旦我尝试使用这一行:

map.fitBounds(bounds);

我收到此错误:

Uncaught RangeError: Maximum call stack size exceeded

当我注释掉fitBounds行时,一切正常并且标记被绘制,尽管地图没有居中并且缩放正确。我构造此代码的方式是否有问题可能导致错误?

function setMarkers(map, data) {
  var bounds = new google.maps.LatLngBounds();
  for (var i = 0; i < data.length; i++) {
  var salecomp = data[i];
  var myLatLng = new google.maps.LatLng(data[i].latitude, data[i].longitude);               
  var marker = new google.maps.Marker({
    position: myLatLng, 
    map: map, 
    title:data.address });          
  bounds.extend(myLatLng);
  }
  map.fitBounds(bounds); // THIS IS THE LINE CAUSING THE ERROR
}           

当我提醒bounds的值时,似乎其中一个纬度或经度值可能为空。这可能是错误的原因吗?

value of bounds

0 个答案:

没有答案