谷歌地图方向API Javascript错误未定义null d.defaultview或评估a.firstChild

时间:2018-04-25 04:27:17

标签: javascript cordova

我正在使用Google Maps Javascript Directions API开发Cordova应用程序。 Cordova谷歌地图插件不支持Directions API,因此Javascript是我最后的手段,以使该功能正常工作。

我已经尝试过v = 3,v = 3.exp,没有任何v,但没有结果。

此外,它没有任何区别,无论我是否包含iOS,Android或Web-API密钥的脚本,都没有变化。

我从Google的开发者文档中获取了演示,所有这些都在Web上完美运行,但在我的Cordova应用程序中没有使用javascript :(

googlemaps.com中包含的Javascript崩溃了:

    TypeError: undefined is not an object (evaluating 'd.defaultView')in common.js 3140:
                    if (d.defaultView && d.defaultView.getComputedStyle && (d = d.defaultView.getComputedStyle(c, null))) {
                d = d.position || d.getPropertyValue("position") || "";
                break a
            }

此代码在网络上完美运行,但不在Cordova应用程序中运行:

<div id="map" style="width: 500px; height:500px;"></div>
<script>
    function initMap() {
        var directionsService = new google.maps.DirectionsService;
        var directionsDisplay = new google.maps.DirectionsRenderer;
        var map = new google.maps.Map(document.getElementById('map'), {
            zoom: 14,
            center: {
                lat: 48.2265,
                lng: 12.6758
            }
        });
        directionsDisplay.setMap(map);
        directionsService.route({
            origin: 'Berlin, Germany',
            destination: 'Vienna, Austria',
            travelMode: 'WALKING',
            waypoints: [{
                location: {
                    lat: 51.339696,
                    lng: 12.373075
                },
                stopover: true
            }, {
                location: {
                    lat: 50.075538,
                    lng: 14.4378
                },
                stopover: true
            }, {
                location: {
                    lat: 48.30694,
                    lng: 14.28583
                },
                stopover: true
            }]
        }, function(response, status) {
            if (status === 'OK') {
                directionsDisplay.setDirections(response);
            } else {
                window.alert('Directions request failed due to ' + status);
            }
        });
    }
</script>
<script async defer src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap">
</script>

0 个答案:

没有答案