2013-04-30 48 views
0

我正在使用以下代码在点图列表中的pts中的谷歌地图上创建一条折线。如何删除Polyline API v3

walkroute = new google.maps.Polyline({ 
     path: pts, 
     strokeColor: "#FF0000", 
     strokeOpacity: 0.4, 
     strokeWeight: 3, 
     geodesic: true' 
     }); 
    walkroute.setMap(map); 

我使用下面的代码,然后尝试删除多段线,但它似乎并没有删除多段线。有人可以给我正确的方法来检查地图上是否存在折线,如果有的话如何删除它。

function clearploylines(); 
if (walkroute === "undefined"){ 
    if (walkroute.getMap === null) { 
    walkroute.setMap(null); 
    } 
} 
+1

如果地图已经为null,则只将地图设置为null。不应该如果(walkroute.getMap!= null)? – 2013-04-30 08:56:40

+1

...还有'if(walkroute!=“undefined”)'? – duncan 2013-04-30 09:11:11

回答

0

我创建了一个JS Fiddle为你展示了如何隐藏或显示相同的折线。

它基本上可以归结为行:

function removePolyline() { 

    // polyline exists, remove 
    if(typeof polyline !== 'undefined') { 
     polyline.setMap(null); 
    } 

} 

在你的情况下,折线变量一样walkroute,但是当你打开的js代码摆弄你会得到点。