离子,如何在谷歌地图上显示正确的信息?

时间:2016-04-05 14:53:09

标签: javascript google-maps google-maps-api-3 ionic-framework

我在谷歌地图中使用他们的javascript API有几个标记,我想在点击标记的顶部显示一个信息窗口,但是当你点击其中一个标记打开时,最后一个标记创建的信息窗口不是在相应的标记中,示例代码:

    for(var i = 0; i < points; i++) {
      var randomLatLong = new google.maps.LatLng(position.coords.latitude + getRandomArbitrary(-radius, radius), position.coords.longitude + getRandomArbitrary(-radius, radius));

      var marker = new google.maps.Marker({
          map: $scope.map,
          animation: google.maps.Animation.DROP,
          position: randomLatLong,
      });

      var infoWindow = new google.maps.InfoWindow({
          content: "Here is something to see!"
      });

      marker.addListener('click', function () {
          infoWindow.open($scope.map, marker);
      });
    }

这是一个codepen:

http://codepen.io/ospfranco/pen/yOPpey

只需点按其中一个标记,te信息就会在其他标记上打开

任何人都知道如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

在听众中将'marker'更改为'this'。

 marker.addListener('click', function () {
          infoWindow.open($scope.map, this);
      });