Google地图 - 未捕获的InvalidValueError:初始化不是函数

时间:2016-07-14 08:27:46

标签: javascript jquery google-maps google-maps-api-3

当我加载显示我的Google地图的页面时,我总是在控制台中看到以下错误:

  

Uncaught InvalidValueError:initialise不是函数 js?sensor = false& callback = initialise:94

将鼠标悬停在文件名上时,会显示为源自https://maps.googleapis.com/maps/api/js?sensor=false&callback=initialise

Google地图窗口和地图显示非常好,但功能齐全。奇怪的是,我无法在Google上找到任何关于此的点击,它们似乎都与setLong和setLat有关。

如果我更改API调用和JS文件之间的加载顺序,则错误消息会在initialisegoogle之间更改。但在这两种情况下,地图仍然可以继续加载。

为什么会出现错误,如何正确解决?这是我的google-map.js文件:

function initialise() {
    var myLatlng = new google.maps.LatLng(51.126500, 0.257595); // Add the coordinates
    var mapOptions = {
        zoom: 15, // The initial zoom level when your map loads (0-20)
        disableDefaultUI: true, // Disable the map UI
        center: myLatlng, // Centre the Map to our coordinates variable
        mapTypeId: google.maps.MapTypeId.ROADMAP, // Set the type of Map
        scrollwheel: false, // Disable Mouse Scroll zooming (Essential for responsive sites!)
    // All of the below are set to true by default, so simply remove if set to true:
    panControl:false, // Set to false to disable
    mapTypeControl:false, // Disable Map/Satellite switch
    scaleControl:false, // Set to false to hide scale
    streetViewControl:false, // Set to disable to hide street view
    overviewMapControl:false, // Set to false to remove overview control
    rotateControl:false // Set to false to disable rotate control
    }
    var map = new google.maps.Map(document.getElementById('map'), mapOptions); // Render our map within the empty div
    var image = new google.maps.MarkerImage('/wp-content/themes/bellavou/img/marker2.png', null, null, null, new google.maps.Size(70,70)); // Create a variable for our marker image.             
    var marker = new google.maps.Marker({ // Set the marker
        position: new google.maps.LatLng(51.125887, 0.258075), // Position marker to coordinates
        icon:image, //use our image as the marker
        map: map, // assign the market to our map variable
        title: 'Bella Vou at The Pantiles' // Marker ALT Text
    });
}
google.maps.event.addDomListener(window, 'load', initialise); // Execute our 'initialise' function once the page has loaded.

1 个答案:

答案 0 :(得分:22)

首先,在API调用上定义回调:

https://maps.googleapis.com/maps/api/js?sensor=false&callback=initialise

然后添加一个监听器

google.maps.event.addDomListener(window, 'load', initialise);

基本上也一样。

您应该从您的JS文件中 上面提到的callback=initialise删除 addDomListener,它应该有效。< / p>