当图层控件移出贴图元素时,不会发出传单贴图单击事件
Leaflet-map click event not emitted when layer controls moved out of map-element
我对传单地图的点击事件有问题。
我把图层控制从地图元素中移出,如下所示:
document.getElementById('outside-controls').appendChild(ctrl.getContainer());
在那之后,每当我更改图层控制设置时,我就开始错过点击事件。
这是工作示例代码:
var dom_documentClicks = document.getElementById('document-clicks'),
dom_mapClicks = document.getElementById('map-clicks'),
count_documentClicks = 0,
count_mapClicks = 0;
var osmUrl = 'http://{s}.tile.osm.org/{z}/{x}/{y}.png',
osmAttrib = '© <a href="http://openstreetmap.org/copyright">OpenStreetMap</a> contributors',
osm = L.tileLayer(osmUrl, {
maxZoom: 18,
attribution: osmAttrib
}),
poly = L.polygon([]),
ctrl = L.control.layers({}, {'Polygon Layer': poly}, {collapsed: false});
// initialize the map on the "map" div with a given center and zoom
var map = L.map('map', {layers: [osm, poly]}).setView([61.497752, 23.760954], 12);
ctrl.addTo(map);
// This seems to be the reason why click-event is not emitted.
document.getElementById('outside-controls').appendChild(ctrl.getContainer());
function onDocumentClick(e) {
count_documentClicks++;
dom_documentClicks.innerHTML = count_documentClicks;
}
function onMapClick(e) {
count_mapClicks++;
dom_mapClicks.innerHTML = count_mapClicks;
}
map.on('click', onMapClick);
document.addEventListener('click', onDocumentClick);
并链接到jsFiddle:http://jsfiddle.net/LnzN2/135/
有谁知道如何解决这个问题(bug?)
看起来ctrl.getContainer()返回的div会消耗映射中的下一个点击事件。
更改此项时:
ctrl.getContainer()
到此:
ctrl.getContainer().childNodes[0]
它有效!
相关文章:
- 更改高贴图的缩放级别
- 移动触发二'单击'事件
- '单击'事件在Backbone中消失.使用流沙后查看
- 一次点击,两次'单击'事件已启动
- 使用此处贴图的不同颜色到噪波标记
- Shift+选项+命令+左键单击的事件
- 表单提交onChange事件;不能使用JQuery函数
- MapReduce还是普通查询?(每个贴图有几个发射)
- 为左键或右键单击附加事件侦听器-onclick'右键单击无效
- 为什么可以't我生成一个'单击'事件
- 单击图元模拟Esc键
- OpenLayers调用setCenter后,贴图仍在0,0的位置
- 如何通过在灯箱外单击或在与图像贴图组合时点击esc退出灯箱
- 在特定标记上居中贴图,在其他标记上fitToBounds
- 注册'单击'事件与google.maps.event.addlistener(自动完成,..)
- CRM 2013-引用子记录的Javascript表单警报(onload事件)
- 在单击 jQuery 事件中找不到变量
- Three.js无法获取贴图和颜色属性'使用Canvas渲染器
- 删除图表.js饼图上的单击切片事件
- 当图层控件移出贴图元素时,不会发出传单贴图单击事件