私はあなたのために2つの基本的なオプションを見ることができます:
1-マーカーのを作成し、に渡されるArray
マーカーを実装し、イベントが関数コールバックを起動したときにマーカーをループします。function
addListener
var markerList = new Array();
//build the markers and add them to markerList with multiple calls to push...
google.maps.event.addListener( window.gmap, "idle", function() {
for ( var i = 0; i < markerList.length; i++ ) {
markerList[i].setVisible( false );
}
});
2-に新しいコールバック関数を追加し、google.maps.Marker.prototype
に複数の呼び出しをaddListener
行って、各マーカーが独自のイベント通知を受信するようにします。
google.maps.Marker.prototype.idleCallback = function() {
this.setVisible( false );
};
var newMarker1 = new google.maps.Marker( opts1 );
google.maps.event.addListener( window.gmap, "idle", newMarker1.idleCallback );
var newMarker2 = new google.maps.Marker( opts2 );
google.maps.event.addListener( window.gmap, "idle", newMarker2.idleCallback );
//and repeat for each marker; you get the idea
私自身、私は常にオプション1を採用しており、そのアプローチに固執しています。多くのリスナーをマップに接続すると、パフォーマンスが低下するのではないかと心配しています。さらに、それはグーグルコードのプロトタイプをいじくり回すことを含みます。
しかし、これは興味深いアイデアです。このようなことを試してみたら、それがどのように機能し、どのように機能したかを教えてください。