传单多多边形自定义弹出



我有一个OSM地图,我使用的是leafletjs。

我已经创建了我的自定义弹出标记。如果它能正常工作的话

marker.bindPopup(strMsg,{className: 'myPopup'});

这段代码运行得很好。

现在,我想创建一个相同的弹出窗口,但点击Multilopygon。多边形的数据来自geoJSON。这是我为这个问题写的代码

var c_park = L.geoJson(data[i].geom, {
            style: myStyle
            });
           c_park.bindPopup("strMsg",{className: 'myPopup'});
           map.addLayer(c_park);

问题是myPopup类不适合多多边形的弹出,结果我得到了本机弹出窗口。如果我在浏览器中手动更改类-它是ok的。

我尝试了不同的方法。F.e.使用函数onEachFeature来初始化弹出框。

有谁知道是什么问题吗?

有谁知道是什么问题吗?

没有问题。标记支持ClassName作为L.icon的一个选项。(文档)。

Polygon继承了polyline和path选项,它们不包含ClassName (docs)。

在我看来,你有两种可能性:

  1. fork传单并添加className选项到多边形
  2. 通过重载bindPopup创建一个继承多边形的子类,并将className作为一个选项

最新更新