2

カスタマイズされたタイル マップ サイトを作成しました: http://shuttle.wanglingjie.net/memoire/memoire.html

しかし、マーカーを作るのに苦労しています。新しいマーカー コードを追加したら:

            var marker = new google.maps.Marker(
            {
            position: new google.maps.LatLng(0, 0),
            map: map
            }
        );

メーカーは表示されず、js は次のメッセージでエラーを報告します。

キャッチされないエラー: プロパティの値が無効です: [オブジェクト HTMLDivElement]

何か案は?ご清聴ありがとうございました。:)

4

2 に答える 2

2

map無効です。firebug では、サイトで次のエラーが発生します。

map is not defined
http://shuttle.wanglingjie.net/memoire/memoire.html
Line 129

JavaScript コードのレイアウトが悪いため、どこが間違っているのかを確認するのは困難です。window.onload問題は、関数に閉じ括弧がないことだと思います: }

括弧内に含まれるすべてのコードが同じ量のインデントを持つように、JavaScript をレイアウトする必要があります。たとえば、投稿したコードは次のようになります。

var marker = new google.maps.Marker(
    {
        position: new google.maps.LatLng(0, 0),
        map: map
    }
);

次のように記述してもかまいません。

var marker = new google.maps.Marker({
    position: new google.maps.LatLng(0, 0),
    map: map
});

これにより、コードが読みやすくなり、バグを見つけるのに役立ちます。

さらにヘルプが必要な場合は、質問を編集して、正しくフォーマットされた関数の本文全体を含めてください。

于 2012-05-01T10:21:49.453 に答える
0

リンクにあるソース コードから、マーカーを作成するブロックがマップを作成する関数の外にあることに気付きました。そのため、マーカーは variable を認識しませんmap

于 2012-05-01T10:22:30.577 に答える