web-dev-qa-db-ja.com

Googleマップ-キャッチされないInvalidValueError:初期化は関数ではありません

Googleマップが表示されているページをロードすると、コンソールに次のエラーが常に表示されます。

キャッチされないInvalidValueError:初期化は関数ではありません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.
7
Lee

まず、API呼び出しでコールバックを定義します。

_https://maps.googleapis.com/maps/api/js?sensor=false&callback=initialise_

次に、リスナーを追加します

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

基本的には同じです。


あなたはremove API呼び出しから_callback=initialise_ or JSファイルの上記のaddDomListener行を実行する必要があります。

25
MrUpsidown