javascript - Google map 未按预期显示

标签 javascript asp.net google-maps google-maps-api-3

我想创建谷歌地图。现在它显示如第一个屏幕截图所示。 但我希望它显示为第二个屏幕截图。有什么办法可以完成任务吗?

我使用以下 Javascript 代码来显示谷歌地图:

<script type="text/javascript">
    var map;
    var infowindow;
    var url = document.URL;
    var id_check = /[?&]park=([^&]+)/i;
    var match1 = id_check.exec(url);
    if (match1 != null) {
        final_id = match1[1];
    } else {
        final_id = "";
    }
    final_id = final_id.replace(/%/g, " ");
    final_id = final_id.replace(/20/g, "");
    var latlong = /[?&]latlong=([^&]+)/i;
    var latlongmatch = latlong.exec(url);
    if (latlongmatch != null) {
        latlong = latlongmatch[1];
    }
    else {
        latlong = "";
    }
    latlong = latlong.replace(/%/g, " ");
    latlong = latlong.replace(/20/g, "");
   // alert(final_id);
    function initialize() {
        var split = latlong.split(',');
        var lat = split[0];
        var long = split[1];
        var loca = new google.maps.LatLng(lat,long);
        map = new google.maps.Map(document.getElementById('map'), {
            mapTypeId: google.maps.MapTypeId.ROADMAP,
            travelmode: google.maps.TravelMode.BICYCLING,
            center: loca,
            zoom: 14
        });

        var request = {
            location: loca,
            radius: 10000,
            //name: 'State Game Lands',
            //keyword: 'State Game Lands',
            //type: ['State Game Lands']


        };
        infowindow = new google.maps.InfoWindow();
        var service = new google.maps.places.PlacesService(map);
        service.nearbySearch(request, callback);
    }

    function callback(results, status) {
        if (status == google.maps.places.PlacesServiceStatus.OK) {
            for (var i = 0; i < 2; i++) {
                alert(results[i].geometry.location.formatted_address);
                createMarker(results[i]);
            }
        }
    }

    function createMarker(place) {
        var split = latlong.split(',');
        var lat = split[0];
        var long = split[1];
        var placeLoc = place.geometry.location;
        var marker = new google.maps.Marker({
            map: map,
            //position: place.geometry.location

            position: new google.maps.LatLng(lat,long)
        });

        google.maps.event.addListener(marker, 'mouseover', function () {
            infowindow.setContent(final_id);
            infowindow.open(map, this);
            //marker.openInfoWindowHtml(final_id);
        });
    }

    google.maps.event.addDomListener(window, 'load', initialize);
</script>

第一个屏幕截图(现在显示如下)

Google Map without appear display

第二个屏幕截图(应该显示为这样)

Google map with display view

最佳答案

如果您希望它显示为卫星,只需更改行:

mapTypeId: google.maps.MapTypeId.ROADMAP,

mapTypeId: google.maps.MapTypeId.SATELLITE,

关于javascript - Google map 未按预期显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18376834/

相关文章:

javascript - 如何将 'offset' 应用于 iframe 内的元素?

javascript - 按对象键查询 Firestore

javascript - 如何制作一个跟随浏览器窗口但在其容器末尾停止的箭头?

google-maps - Google map API v3 中的 Javascript 错误 (RefererDeniedMapError)

javascript - 从我的数据库加载谷歌地图标记

javascript - 带有父样式属性的 jQuery if 条件

c# - ASP :listview add a <div class ="clear"> after every 3 items

asp.net - 我可以在超链接上明确指定NavigateUrl吗?

asp.net - 我需要对标题属性(工具提示)进行 html 编码吗?

ios - 适用于 iOS 的 Google Maps SDK 预览版 API key