0

データベースからのデータを示すマーカーが設定された Google マップ (API v3) があります。マップ上に現在表示されているマーカーを確認し、それらをサイドバーに追加して、マップが移動するたびに調整するサイドバーを追加したいと思います。そのようなことは可能ですか?

4

1 に答える 1

1

目印を含む KML ファイルを読み込み、それらをサイドバーに配置し、地図を変更するときに Google Maps API を使用して場所を暗く/明るくするGitHubプロジェクトがあります。関連する部分は次のスニペットです。

google.maps.event.addListener(mapInstance, 'bounds_changed', function() {
    currentBounds = mapInstance.getBounds();
    for (i = 0; i < parser.docs[0].placemarks.length; i++) {
        var myLi = $("#p" + i);
        if (currentBounds.contains(parser.docs[0].placemarks[i].marker.getPosition())) {
            myLi.css("color","#000000");
        } else {
            myLi.css("color","#CCCCCC");
        }
    }
});

その短縮版は次のとおりです。

google.maps.event.addListener(mapInstance, 'bounds_changed', function() {
    currentBounds = mapInstance.getBounds();
    /*
     Loop over Google map placemarks and check the placemark by doing:
     if (currentBounds.contains(currentPlacemark.getPosition())) {
       // Change CSS to make sidebar entry visible
     } else {
       // Change CSS to make sidebar entry invisible
     }
     */
});

私の例では、mapInstance は google.maps.Map のインスタンスであり、currentPlacemark は google.maps.Marker オブジェクトの 1 つのインスタンスです。

于 2013-01-04T22:01:47.030 に答える