Leaflet foreach功能自动触发鼠标悬停功能

时间:2015-10-06 10:02:10

标签: javascript jquery leaflet geojson

我遇到了必须创建类似于ChoroplethExample的仪表板应用程序的情况。但唯一的问题是我必须在所有状态之间进行迭代(geoJSON中的功能)并在每次迭代中暂停3秒钟。

我发现了topic,其中给出了鼠标悬停触发示例。但是我们如何在这种情况下使用它。

下面是每次迭代都需要触发的函数: LeafletExample

function highlightFeature(e) {
var layer = e.target;

layer.setStyle({
    weight: 5,
    color: '#666',
    dashArray: '',
    fillOpacity: 0.7
});

if (!L.Browser.ie && !L.Browser.opera) {
    layer.bringToFront();
  }
}

1 个答案:

答案 0 :(得分:1)

您可以使用L.GeoJSON的{​​{1}}方法迭代图层,然后在当前图层使用eachLayer方法,在前一图层使用highlightFeature方法(如果有)。

删除当前的互动:

resetHighlight

添加迭代器:

function onEachFeature(feature, layer) {
    layer.on({
        //mouseover: highlightFeature,
        //mouseout: resetHighlight,
        //click: zoomToFeature
    });
}

示例:http://plnkr.co/edit/QD2uHv?p=preview