1

这是我的 JavaScript 代码

Description += "<br><span class='descr'>Coordinate:</span> <span class='cont'><a href=\"" + mapsLink + "\" onclick=\"window.open('" + mapsLink + "')\">" + picRecords[index].getCoords() + "</span></a>";

var mapsLink = "https://maps.google.it/maps?q=" + picRecords[index].getLatitude() + "," + picRecords[index].getLongitude();

我希望如果一个点(getLatitude,getLongitude)打开街景,onClick 上的另一个链接。

我必须为此使用一些 Google Maps API 吗?哪一个 ?

谢谢回复!

4

2 回答 2

1

是的,您必须为此使用 Google Maps API

https://developers.google.com/maps/documentation/javascript/streetview#StreetViewService

getPanoramaByLocation() 函数会告诉您附近是否有全景图。

于 2012-10-19T15:06:13.787 回答
1

什么barryhunter说。这是我的做法。我有一个空的 div 已经可以看到街道地图进入。然后,如果街道地图不可用,我会隐藏 div:

function createStreetMap(strMapCanvasID, intLat, intLong) {
    var streetViewLocation = new google.maps.LatLng(intLat, intLong);
    var panorama;
    var sv = new google.maps.StreetViewService();
    sv.getPanoramaByLocation(streetViewLocation, 50, function (data, status) {
        if (status == 'OK') {
            var panoramaOptions = {
                pano: data.location.pano,
                addressControl: false,
                navigationControl: true,
                navigationControlOptions: {
                    style: google.maps.NavigationControlStyle.SMALL
                }
            };
            var panorama = new google.maps.StreetViewPanorama(document.getElementById(strMapCanvasID), panoramaOptions);
        } else {
            $('#' + strMapCanvasID).parent().hide();
        }
    });
    return panorama;
}

然后我做:

$(document).ready(function() {
    var myPano = createStreetMap('streetView', 41.3884810185, 2.13370800018);
});
于 2012-10-20T10:23:39.977 回答