Google Map通过TypeError:b.P不是函数错误

时间:2013-05-08 10:00:41

标签: google-maps infowindow

我想在谷歌地图中使用infowindow。 Map正在实现,但每当我以前点击任何标记时,控制台中总会出现错误“TypeError:b.P不是函数” 以下是我正在使用的代码。

 var mapOptions_map2;
function initialize_map2() {

  var locations_map2 = eval(document.getElementById('locations').value);
  mapOptions_map2 = new google.maps.Map(document.getElementById('fullmap_view'), {
      zoom: 4,
      center: mapcenter,
      mapTypeId: google.maps.MapTypeId.ROADMAP,
    });
  var contentString = 'some content';
  var infowindow_map2 = new google.maps.InfoWindow({
      maxWidth: 200
  });

  var marker_map2, i;
  for (i = 0; i < locations_map2.length; i++) {  
      marker_map2 = new google.maps.Marker({
        position: new google.maps.LatLng(locations_map2[i][1], locations_map2[i][2]),
        map: mapOptions_map2
      });
      google.maps.event.addListener(marker_map2, 'click', (function(marker_map2, i) {
         return function() {
            infowindow_map2.setContent(contentString);
            infowindow_map2.open(map, marker_map2);
         }
        })(marker_map2, i));
      }
}
google.maps.event.addDomListener(window, 'load', initialize);

1 个答案:

答案 0 :(得分:5)

代码中没有“map”变量。你想要mapOptions_map2:

        infowindow_map2.open(map, marker_map2);

应该是:

        infowindow_map2.open(mapOptions_map2, marker_map2);

example