Google maps google maps fitBounds()已损坏或。。? 谷歌地图JavaScript API v3示例:简单地图 #地图画布{ 宽度:500px; 高度:500px; } var映射; 函数初始化(){ 变量myOptions={ 缩放:8, 中心:新google.maps.LatLng(-34.397150.644), mapTypeId:google.maps.mapTypeId.ROADMAP }; map=new google.maps.map(document.getElementById('map\u canvas'),myOptions); 变量位置A={ 纬度:37.788081+0.0049, 经度:-83.001709+0.00019 }; 变量位置B={ 纬度:37.788081, 经度:-83.001709 }; var sw=新的google.maps.LatLng(位置A.纬度,位置A.经度); var ne=新的google.maps.LatLng(位置B.纬度,位置B.经度); var distance=google.maps.geometry.Spheremic.ComputedDistanceBeween(西南、东北); 控制台日志(“西南和东北之间的距离:+距离); var bounds=新的google.maps.LatLngBounds(西南、东北); console.log(边界); 映射边界(bounds); } google.maps.event.addDomListener(窗口“加载”,初始化);

Google maps google maps fitBounds()已损坏或。。? 谷歌地图JavaScript API v3示例:简单地图 #地图画布{ 宽度:500px; 高度:500px; } var映射; 函数初始化(){ 变量myOptions={ 缩放:8, 中心:新google.maps.LatLng(-34.397150.644), mapTypeId:google.maps.mapTypeId.ROADMAP }; map=new google.maps.map(document.getElementById('map\u canvas'),myOptions); 变量位置A={ 纬度:37.788081+0.0049, 经度:-83.001709+0.00019 }; 变量位置B={ 纬度:37.788081, 经度:-83.001709 }; var sw=新的google.maps.LatLng(位置A.纬度,位置A.经度); var ne=新的google.maps.LatLng(位置B.纬度,位置B.经度); var distance=google.maps.geometry.Spheremic.ComputedDistanceBeween(西南、东北); 控制台日志(“西南和东北之间的距离:+距离); var bounds=新的google.maps.LatLngBounds(西南、东北); console.log(边界); 映射边界(bounds); } google.maps.event.addDomListener(窗口“加载”,初始化);,google-maps,Google Maps,上面返回的是: 在开发测试期间意外地得到了它,清理了“bug”周围的所有东西,但是,它似乎真的是一个bug 有人能解释一下吗 将位置a.经度0.00019设置为0确实会显示有效地图,因此这就是问题所在。您的边界无效,南大于北,东大于西。如果你把加号换成减号,它就会加载。我只需要创建一个没有参数的LatLngBounds,并使用bounds.extend <!DOCTYPE html> <html> <head> <title>Google Map

上面返回的是:

在开发测试期间意外地得到了它,清理了“bug”周围的所有东西,但是,它似乎真的是一个bug

有人能解释一下吗


位置a.经度
0.00019
设置为
0
确实会显示有效地图,因此这就是问题所在。

您的边界无效,南大于北,东大于西。如果你把加号换成减号,它就会加载。我只需要创建一个没有参数的
LatLngBounds
,并使用
bounds.extend

<!DOCTYPE html>
<html>
<head>
<title>Google Maps JavaScript API v3 Example: Map Simple</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
<meta charset="UTF-8">
<style type="text/css">
#map_canvas {
    width: 500px;
    height: 500px;
}
</style>
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?sensor=false&libraries=geometry"></script>
<script type="text/javascript">
    var map;
    function initialize() {
        var myOptions = {
            zoom : 8,
            center : new google.maps.LatLng(-34.397, 150.644),
            mapTypeId : google.maps.MapTypeId.ROADMAP
        };
        map = new google.maps.Map(document.getElementById('map_canvas'), myOptions);

        var locationA = {
            latitude : 37.788081 + 0.0049,
            longitude : -83.001709 + 0.00019
        };
        var locationB = {
            latitude : 37.788081,
            longitude : -83.001709
        };

        var sw = new google.maps.LatLng(locationA.latitude, locationA.longitude);
        var ne = new google.maps.LatLng(locationB.latitude, locationB.longitude);

        var distance = google.maps.geometry.spherical.computeDistanceBetween(sw, ne);
        console.log("Distance between SW & NE: " + distance);

        var bounds = new google.maps.LatLngBounds(sw, ne);
        console.log(bounds);
        map.fitBounds(bounds);
    }

    google.maps.event.addDomListener(window, 'load', initialize);
</script>
</head>
<body>
    <div id="map_canvas"></div>
</body>
</html>

顺便说一句,如果进行调试,您会注意到
bounds
获取了错误的值。这是它的构造函数的问题。尽管如此,我不知道
extend()
。谢谢你,笨蛋!
var bounds = new google.maps.LatLngBounds();
    bounds.extend(sw);
    bounds.extend(ne);