我正在通过以下方式向图层组添加标记:
var lGroup1 = new L.FeatureGroup(),
lGroup2 = new L.FeatureGroup(),
lGroup3 = new L.FeatureGroup();
new compMarker([50.07045,8.24660]).bindPopup('<p>Something</p>').addTo(lGroup1).on('click', onClick);
new compMarker([50.07045,8.24660]).bindPopup('<p>Something</p>').addTo(lGroup2).on('click', onClick);
new compMarker([50.07045,8.24660]).bindPopup('<p>Something</p>').addTo(lGroup3).on('click', onClick);
如您所见,我正在向三个图层组中添加一个相同的标记(相同的内容)。有没有一种方法可以在不生成三个相同标记的情况下完成此操作?我想要将一个标记添加到多个图层组中。
我已经尝试过以下方法但没有成功:
new compMarker([50.07045,8.24660]).bindPopup('<p>Something</p>').addTo(lGroup1,lGroup2,lGroup3).on('click', onClick);
任何帮助都将不胜感激!
L.marker([50.07045,8.24660]).addTo(lGroup1).addTo(lGroup2).addTo(lGroup3)
。但是它有一个副作用,当你激活所有组并且然后停用其中一个时,标记会消失 :/ 你可能需要编写一个函数,对所有图层进行可见性检查,并决定是否显示标记。 - chrki