如何更改街景仪器的位置

时间:2012-06-04 15:01:01

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

我正在使用Google Maps API V3,我想知道当用户是INSIDE街景时,我可以如何更改元素的位置(如图http://www.pikky.net/uploads/d6964cfad0bb97cc3ada7852df260a715234d69a.png所示)。 谢谢,
米尔科

1 个答案:

答案 0 :(得分:3)

您可以通过将StreetViewPanoramaOptions定义为StreetViewPanorama对象来实现此目的,该对象在声明地图选项时将初始化为地图变量。在StreetViewPanoramaOptions中,您可以确定当您在街景中时控件的位置。 (有关详细信息,请参阅此文档https://developers.google.com/maps/documentation/javascript/reference#StreetViewPanoramaOptions)。这是一个如何解决这个问题的片段。 (注意:这应该在初始化map变量之前在initialize()函数中完成。)

首先,我们将为StreetViewPanoramaOptions声明一个变量,并根据需要更改选项:

    var panoramaOptions = {
        addressControlOptions : { position : google.maps.ControlPosition.BOTTOM_CENTER },
        zoomControlOptions : { position : google.maps.ControlPosition.TOP_RIGHT},
        enableCloseButton : true,
        visible: false //set to false so streetview is not triggered on the initial map load
    };

下一步是使用上面的StreetViewPanoramaOptions声明一个设置为地图容器/ div的StreetViewPanorama对象:

    var panorama = new  google.maps.StreetViewPanorama(document.getElementById("map_canvas"), panoramaOptions);

最后,我们声明地图选项并使用地图选项设置地图变量,就像我们通常那样。除了在地图选项中,我们将streetView选项设置为panorama变量:

    var mapOptions = {
        center: new google.maps.LatLng(42.345573,-71.098326),
        zoom: 14,
        mapTypeId: google.maps.MapTypeId.ROADMAP,
        streetView : panorama //this is where we set the panorama object to the map
    };
    var map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);

请参阅此来源,了解如何在地图div(https://developers.google.com/maps/documentation/javascript/controls#ControlPositioning

中定位控件