如何标记传单滑块

时间:2015-10-09 07:26:41

标签: javascript leaflet uislider

我正在使用[dwilhelm89] [1]的传单滑块,我让它滑过几天(我每天都做一个图层并将其添加到滑块)但我需要添加一个标签(时间轴) )这样你就可以看到滑块的位置,知道如何做到这一点?感谢



   var sliderControl = L.control.sliderControl({  position: "topright",   layer: layerk,  range: true, follow:true,alwaysShowDate : true});
												
map.addControl(sliderControl);
sliderControl.startSlider();




这段代码是我用来制作滑块,我可以使用的任何选项或编辑? [1]:https://github.com/dwilhelm89/LeafletSlider

1 个答案:

答案 0 :(得分:0)

如果您的意思是添加带刻度线的刻度,LeafletSlider似乎没有任何选项。虽然我没有任何修改或扩展LeafletSlider代码的建议,但还是会想到其他几种方法:

首先,如果您只处理几天,并且您只需要在滑块长度上添加一些标签,则可以根据this stackoverflow question的答案调整其中一个示例。最顶级的答案看起来很有希望,因为它可能是最简单的解决方案。

[编辑:在仔细查看Leaflet Slider代码之后,我意识到它实际上并没有按时间字段中的数量过滤数据。当您滑动它时,它只是从一个特征步进到下一个特征(即,两秒的间隔被视为两年的间隔相同)。因此,第一种方法实际上不适用于LeafletSlider,除非时间字段从一个特征到下一个特征单调增加或非常接近。]

其次,您可以调整另一个非Leaflet特定的滑块来完成这项工作,例如jQRangeSlider,它有一些相当不错的options for scales。以下是该方法的一个示例:

http://fiddle.jshell.net/nathansnider/p850sr8y/

除滑块本身外,它还包含一个自定义控件,用于将滑块放置在地图上,以及一个用于过滤数据的功能,每次移动滑块时都会调用该功能。如果您想了解更多详情,我很乐意详细说明。