2016-09-08 4 views
-1

Googleマップとjavascriptを初めて使用しています。私は外部リンク/リストを使って地図とやりとりしようとしています。HTML/JS - Googleマップv3 - 外部リンクからIDでマーカーを選択/削除

私の主な問題は、マップ上でそのIDを持つマーカーを選択できないということです。

リスト/配列にすべてのマーカーを入れて、それを繰り返す必要はありません。なぜなら、どれくらいの数のマーカーがあるのか​​わからないからです。私changeIcon()関数で

私は単に自分のIDでそれらを選択し、それらなどの除去は、そのような情報ウィンドウを開くと彼らと仕事をしたい...

、私はいくつかの方法を試してみましたが、どれもこれまで働きました。

<html> 

.... 

<div id="mapview"></div> 

<a class="test-link" onmouseover="changeIcon()">Link</a> 

<script> 

function changeIcon() 
    { 
     //marker = map.selectMarker("4"); 
     //marker = markers[4]; 
     //infowindow.open(map,marker); 

     //$("#mapview").map.removeMarker(4); 
    } 

var map = new google.maps.Map(document.getElementById('mapview'), 
     { 
      center: {lat: 44.540, lng: -78.546}, 
      zoom: 16 
     }); 

function initMap() 
{ 
    var marker = new google.maps.Marker({ 
      position: userPosition, 
      map: map, 
      id: 4 
     }); 
} 

</script> 

</html> 

...........................................

答えて

-1

マップからマーカーを取得するAPIはありません。 ref: "https://developers.google.com/maps/documentation/javascript/reference"

idはインデックスと決して一致しないため、配列を使用したくないと思います。だから私は、辞書を使用することをお勧め:

var markers = {}; // "{}" to specify dictionary instead of "[]" to specify array 

あなたがマーカーを作成するとき、あなたは辞書に追加します。

markers[4] = marker; // 4 is the id 

あなたはそれを取得したいとき:

var currentMarker = markers[4]; 
関連する問題