HTML5地理位置显示2个位置之间的驾驶时间?

时间:2014-12-15 09:49:09

标签: javascript html5

我正在尝试在我的项目中使用HTML5 gelocation。到目前为止这么好,但我正在努力解决的一件事是,我无法在两个不同的地点之间获得驾驶时间。

好吧,确切地说,我可以在几小时,几分钟内得到时间,但似乎我需要使用谷歌地图,这是我不想要的!

这是一个有地图的工作小提琴:http://jsfiddle.net/qa8pcyj9/

或者您可以查看HERE

这是代码:

(function () {
    var directionsService = new google.maps.DirectionsService(),
        directionsDisplay = new google.maps.DirectionsRenderer(),
        createMap = function (start) {
            var travel = {
                    origin : (start.coords)? new google.maps.LatLng(start.lat, start.lng) : start.address,
                    destination : "Alexanderplatz, Berlin",
                    travelMode : google.maps.DirectionsTravelMode.DRIVING
                    // Exchanging DRIVING to WALKING above can prove quite amusing <img src="http://robertnyman.com/wp-includes/images/smilies/icon_smile.gif" alt=":-)" class="wp-smiley">
                },
                mapOptions = {
                    zoom: 10,
                    // Default view: downtown Stockholm
                    center : new google.maps.LatLng(59.3325215, 18.0643818),
                    mapTypeId: google.maps.MapTypeId.ROADMAP
                };

            map = new google.maps.Map(document.getElementById("map"), mapOptions);
            directionsDisplay.setMap(map);
            directionsDisplay.setPanel(document.getElementById("map-directions"));
            directionsService.route(travel, function(result, status) {
                if (status === google.maps.DirectionsStatus.OK) {
                    directionsDisplay.setDirections(result);
                }
            });
        };

        // Check for geolocation support    
        if (navigator.geolocation) {
            navigator.geolocation.getCurrentPosition(function (position) {
                    // Success!
                    createMap({
                        coords : true,
                        lat : position.coords.latitude,
                        lng : position.coords.longitude
                    });
                }, 
                function () {
                    // Gelocation fallback: Defaults to Stockholm, Sweden
                    createMap({
                        coords : false,
                        address : "Sveavägen, Stockholm"
                    });
                }
            );
        }
        else {
            // No geolocation fallback: Defaults to Lisbon, Portugal
            createMap({
                coords : false,
                address : "Lisbon, Portugal"
            });
        }
})();

如果您查看驾驶方向文本的顶部,您会看到时间以小时显示。

这基本上就是我所需要的但是我只需要没有其他所有东西,如地图,行车路线等等。

问题:

是否可以在不使用谷歌地图的情况下获得每次凝聚之间的驾驶时间而不显示所有驾驶指示等?

任何帮助将不胜感激

0 个答案:

没有答案