从角谷歌地图访问InfoWindow

时间:2015-02-10 00:02:32

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

我通过angularJS使用谷歌地图(使用angular-google-map

我有一个带有InfoWindow的标记,除了在iOS上工作正常。当我旋转设备时,谷歌地图API似乎没有很好地计算尺寸,而且infoWindow对于其内容来说太小了。我认为这与this one

相同

因此,我一直在尝试访问InfoWindow对象以关闭它并再次打开它以强制谷歌重绘/重新计算但无法找到访问它的方法。 我可以使用 $ scope.map.control.getGMap()以角度访问google.maps.Map对象,但无法访问InfoWindow。我可以在Window.prototype中看到getGWindows,但不知道如何从地图中访问它。我也可以访问这些标记,但是他们没有引用它们的信息。

以下是我创建标记的方法,以防它可以提供任何帮助:

var marker = {
    id: obj.id,
    name: obj.name,
    latitude: obj.lat,
    longitude: obj.lng,
    address: obj.address,
    suburbCity: obj.suburbCity,
    state: obj.state,
    postcodeZip: obj.postcodeZip,
    icon: "xxx.png"),
    options: {
        labelContent: obj.name,
        labelClass: "none",
        labelAnchor:"25 0", 
        opacity: 0.25,
        animation: google.maps.Animation.DROP,
        visible: true
    },
    templateurl:'markerwindow.tpl.html',
    templateparameter: data,
    closeClick: function() {
        marker.options.visible = false;
        return $scope.$apply();
    },
    onClicked: function() {
        navigateToMarkerOnMap(marker);
    }
};

$scope.map.markers.push(marker);


function navigateToMarkerOnMap(marker) {
    $scope.selected.options.visible = false;
    $scope.selected = marker;
    $scope.selected.options.visible = true;
}

0 个答案:

没有答案