leaflet.js设置fitBounds动画的持续时间

时间:2014-11-20 16:08:08

标签: javascript leaflet

我使用Leaflet向用户显示地图。地图上有几个标记,当用户点击一个标记时,我想平移到标记位置并放大。我可以通过使用以下代码实现这一点:

    map.fitBounds([
        // bounds of clicked marker
    ]);

这很好用,Leaflet甚至可以实现过渡。我想要的是以毫秒为单位设置动画的持续时间。 FitBounds需要一些options,但它们都不允许我指定平移和缩放动画的持续时间。任何人都可以帮我这个吗?

3 个答案:

答案 0 :(得分:4)

这是不正确的,fitBounds方法确实接受zoom/pan options其中的pan选项具有持续时间,如documentation中所述的fitBounds选项。

答案 1 :(得分:2)

您正在寻找的是flyToBounds(<LatLngBounds> bounds, <fitBounds options> options?)

  

使用flyTo之类的平滑动画设置地图视图,但是   边界参数,例如fitBounds

答案 2 :(得分:0)

如@leonhees所说,您可以使用flyToBounds根据对象(折线,多边形等)来拟合传单地图。

即使您可以添加动画duration之类的选项

这是一个例子:

my_map.flyToBounds(new L.polyline(LatLng).getBounds(), {'duration':0.25} )