2017-04-12 38 views
0

我试着点击事件添加到单张标志是这样的:宣传单:将事件添加到标记?

L.marker([41.866056100409044, 12.5349304759025576]).on('click', red).bindLabel('kebabbari (Ali Baba)', {noHide: true}).addTo(map).showLabel(); 

但结果却没有任何click事件的标记(“红()”函数存在)
Marker in leaflet, click event不工作

+0

请参阅http://stackoverflow.com/questions/16927793/marker-in-leaflet-click-event –

+0

可能重复[标记在传单,单击事件](http://stackoverflow.com/questions/16927793/标记在传单点击事件) –

+0

[这个问题](http://stackoverflow.com/questions/16927793/marker-in-leaflet-click-event)不起作用 –

回答

0

只用不同的场景运行多个测试,他们都使用onclick或鼠标悬停。我正在使用Leaflet 1.03我认为你使用的是以前的版本。

var Marker = L.marker([41.866056100409044, 12.5349304759025576]).on('click', onClick).addTo(map) 

添加新的功能如下图所示: -

function onClick(e) { 
    alert(this.getLatLng()); 
} 

试试这个,这将证明你的onclick功能可以正常工作。我认为小册子插件标签可能会干扰它,因为它有一个Onclick选项,您可能需要进一步研究。

但有时你需要证明你可以先让它工作,然后再一点一点地加回去。

此外,Leaflet.Label确实与onclick发生冲突。

https://github.com/Leaflet/Leaflet.label/issues/132从论坛的这个问题将帮助你他们在这里有详细的答案。

您需要特异性结合事件marker.label,如:

L.DomEvent.addListener(marker.label, 'click', function(e) { this.togglePopup() }, marker); 

我不得不挖的代码有点摸不着头脑,在README值得一提的关于如何访问标签并将事件绑定到它。