リトル背景。特定のナビゲーション項目をクリックすると、地図上にmarkers
が作成されます。別のナビゲーション項目をクリックすると、以前のmarkers
が削除され、新しい項目が設定されます。Google Maps API v3はすべてのポリラインを削除します
今私はpolylines
と一緒に働いていて、polylines
と同じコンセプトを作成しようとしていますが、難しい時があります。ここに私が持っているものがあります:
// Global variable for array of lines
var points= [];
私のポイントを設定します。
line1 = new google.maps.LatLng(line1Start, line1Finish);
line2 = new google.maps.LatLng(line2Start, line2Finish);
line3 = new google.maps.LatLng(line3Start,line3Finish);
points.push(line1, line2, line3);
私のポリラインを設定します。
var polyline = new google.maps.Polyline({
path:points,
strokeColor:"#FF0000",
strokeOpacity:1.0,
strokeWeight:2
});
マップを線で初期化します。
polyline.setMap(map);
すべてがうまく動作します。線が作成され、マーカー間に現れます。今、彼ら(またはしない...)
function removeLines() {
if (points) {
points.length = 0;
}
points = [];
}
removeLinesを(削除することができます)、次に新しいものが設定され、それらをクリアするために、関数の先頭で呼び出されています。これは実際にポイント配列の私のポイントをクリアしますが、マップ自体にはまだpolylines
が表示され、マーカのように消えることはありません。
何がありますか?
うわー..私はこの前にやっていた、しかし、私がやっていましたpoints配列のループとpoints [i] .setMap(null);明らかに、これはポリライン上にある必要があり、点配列ではありません... DUH。 +1のおかげで私はそれを実現する手助けをしました:) – Romes