Gmaps.js路线随着时间的推移

时间:2014-07-12 17:51:06

标签: javascript jquery google-maps

我正在尝试从该位置输出路线时间,由于某种原因,路线永远不会通过。

jQuery(document).ready(function () {
    $.get('api/index.php', function(data) {
        data = JSON.parse(data);
        var map = new GMaps({
            div: '#map',
            lat: 40.715520,
            lng: -74.003409
            zoom: 10
        });
        map.getRoutes({
            origin: [40.715520, -74.003409],
            destination: [data.lat, data.lon],
            callback: function(e) {     
                var time = 0;
                for (var i = 0; i < e[0].legs.length; i++) {
                    time += e[0].legs[i].duration.value;            
                }
                $('.time').html(time);
            } 
        });
    });
});

我做错了吗? 我以前尝试过这个并且工作正常。

这是api输出: {"lat":40.9238473,"lng":-73.237647}

1 个答案:

答案 0 :(得分:1)

创建地图时, lng 缩放属性之间缺少逗号:

var map = new GMaps({
    div: '#map',
    lat: 40.715520,
    lng: -74.003409,
    zoom: 10
});

当你调用map.getRoutes方法时,你需要使用 data.lng data.lon 属性:

map.getRoutes({
            origin: [40.715520, -74.003409],
            destination: [data.lat, data.lng],
            ... 
        });