0

我正在尝试通过单击按钮生成方向。用户选择位置点 a 和点 b,然后按下按钮和代码绘制方向从点 a 到点 b。我已成功完成此代码,但我无法删除以前在地图上绘制的方向。请查看图片链接http://i.stack.imgur.com/z1fqo.png 。我想从地图中删除 a、b 方向,因为它是最后一个方向。

$et_main_map.gmap3({
getroute:{
    options:{
            origin:org,
            destination:dest,
            travelMode: google.maps.DirectionsTravelMode.DRIVING
        },
        callback: function(results){
          console.log(results);
          if (!results) return;
            $(this).gmap3({
                directionsrenderer:{
                  divId:'directionPath', 
                  options:{
                    directions:results,
                    suppressMarkers: true 
                  }
                }
            });     
        }
      }
});

上面的代码添加了方向。下面的代码不会删除地图上的方向。

$et_main_map.gmap3({
    clear: {
        name:["directionRenderer"]
    }
});

我已经尝试了很多事情,例如按照下面的链接。 http://gmap3.net/forum/viewtopic.php?id=341 Gmap3 明确路线

请帮我。谢谢

4

2 回答 2

1

您应该为方向渲染函数提供一个 ID(“whatEverYourID”),以便在调用 clear 函数时识别它:

$et_main_map.gmap3({
    getroute:{
        options:{
           origin: org,
           destination: dest,
           travelMode: google.maps.DirectionsTravelMode.DRIVING
        },
        callback: function(results){
            console.log(results);
            if (!results) return;
            // this is addition lines for handling directions container------
            if (!$("#dircontainer").length>0) {
                $("<div id='dircontainer' class='googlemap'></div>").insertAfter("#map");
            } else {
                // this will clear previous the googlemap directions html container
                $("#dircontainer").html("");
            }
            // --------------------------------------------------------------
            $(this).gmap3({
                // clear previous direction
                clear: {
                    id: "whatEverYourID"
                },
                map:{
                    options:{
                         center:[tolat, tolong],
                         zoom: 10
                    }
                },
                directionsrenderer:{
                    container: $("#dircontainer"),
                    options:{
                        directions:results
                    },
                    // this is the ID you have to add
                    id: "whatEverYourID"
                 }
            });
        }
    }
});

我希望它会有所帮助

于 2015-05-06T05:50:46.487 回答
0

我需要更新我的 gmap3 库。对于那些想要解决这个问题的人,只需将 gmap3.js 更新到版本 5.1.1。这将解决问题。

于 2013-05-30T14:05:04.000 回答