传单:像L.ImageOverlay一样设置HTML块
是否可以设置一个类似于imageOverlay的图层,并在传单地图中嵌入html标记?也许用插件? 我试着用弹出窗口设置它,但是我需要更多关于X和Y坐标的控制。因此,这并不是我的问题的解决方案。如果您阅读了关于如何扩展传单和制作插件的介绍,并查看了,答案会变得非常简单:传单:像L.ImageOverlay一样设置HTML块,html,leaflet,Html,Leaflet,是否可以设置一个类似于imageOverlay的图层,并在传单地图中嵌入html标记?也许用插件? 我试着用弹出窗口设置它,但是我需要更多关于X和Y坐标的控制。因此,这并不是我的问题的解决方案。如果您阅读了关于如何扩展传单和制作插件的介绍,并查看了,答案会变得非常简单: L.HtmlBlockOverlay = L.ImageOverlay.extend({ initialize: function(bounds, options) { return L.ImageOverlay.p
L.HtmlBlockOverlay = L.ImageOverlay.extend({
initialize: function(bounds, options) {
return L.ImageOverlay.prototype.initialize.call(this, null, bounds, options);
},
_initImage: function() {
var block = this._image = L.DomUtil.create('div', 'leaflet-image-layer' +
(this._zoomAnimated ? ' leaflet-zoom-animated' : ''));
if (this.options.className) { L.DomUtil.addClass(block, this.options.className); }
block.innerHTML = this.options.html;
}
});
var blockOverlay = new L.HtmlBlockOverlay(bounds, {
html: 'Hello world!',
className: 'hello-world-box'
}).addTo(map);
请参见。是否需要HTML层以缩放方式缩放?一张小照片可能会有帮助。是的,它应该是可缩放的。哇,我对它的简单性印象深刻。谢谢您!一个问题:如何在创建的元素上绑定jquery<代码>$('hello world box')。在('click',function(){console.log('hello');})上代码>无效。在尝试将事件附加到DOM之前,请确保该内容在DOM中。