マップ上にいくつかのカテゴリを表示する必要がある Google マップを使用してアプリを開発しています。ここで、複数のカテゴリからマーカーを追加し、必要に応じて削除できるようにしたいと考えています。
全体を把握することができました。少なくとも、ほとんど... カテゴリのマーカーの削除に問題があります。これを明確にするために、jsfiddle でライブデモを作成しました。だからここに私がこれをやろうとする方法があります:
コード
まず、マップなどを初期化します (ただし、ここでは関係ありません)。次に、マップにマーカーを追加します。
for(i in markers){
var marker = new google.maps.Marker({
map: map,
draggable: false,
position: new google.maps.LatLng(markers[i].latitude, markers[i].longitude),
visible: true,
data: category
});
newMarkers.push(marker);
}
ご覧のとおり、オブジェクトに「data: category」があります。これは Google マップ API ではないものですが、エラーは発生せず、マーカーを削除したいときに配列を検索できます。ここで removeMarker 関数:
function removeMarkers(category)
{
for(i in newMarkers) {
if(newMarkers[i]['data'] == category){
count ++;
newMarkers[i].setMap(null);
newMarkers.splice(i, 1);
}
}
}
マーカーは削除されますが、すべてではありません...誰かが私の問題を解決していますか?
ライブデモ
前もって感謝します、
ヘレナ S.