2016-03-02 77 views
1

我正在使用传单的项目上工作。我有一个大的地图,我在浏览器div中渲染,并且当用户点击某个元素时,我正在渲染一个弹出式div(使用z顺序)。暂停传单事件传播

问题是,如果你点击'弹出窗口'并拖动,传单会拖动底层地图,就好像该div不存在一样。这会造成奇怪的行为,如果我把一个选择下拉到div中,并且可能禁止在子div中的任何拖放行为。

如何阻止div发送发生在其边界内的事件到单张?我试着玩css属性指针事件,但这似乎没有做任何事情。查看已发布的传单问题似乎也不能说明问题。

回答

2

将事件侦听器附加到您的自定义弹出窗口上,并运行stopPropagation以及可选的preventDefault

传单有几个实用程序和这个速记,例如:

L.DomEvent.on(divElementForMyCustomPopup, 'click mousedown', function(ev){ 
    L.DomEvent.stop(ev); 
}); 
+0

对我的作品'L.DomEvent.disableClickPropagation(元);' –