2 种不同的传单弹出样式
P粉702946921
P粉702946921 2023-08-25 09:45:31
0
1
433
<p>Leaflet 中的 Popups 是否可以有 2 种不同的样式?用户交互时将触发 2 个不同的弹出窗口(就样式和内容而言),一个是在鼠标悬停时触发,一个是在单击时触发。 </p> <p><strong>问题:</strong>我尝试覆盖适用于一种弹出样式的样式表中 <code>.leaflet-popup-content-wrapper'</code> 的 CSS 样式,但无法运行时切换CSS样式在2种CSS样式之间来回切换,可能是因为弹出的DOM元素尚未加载。</p> <pre class="brush:php;toolbar:false;">marker.on('mouseover', function() { marker.bindPopup('<b>Hello world</b>'); marker.openPopup(); }) marker.on('click', function() { marker.bindPopup('<b>Click click</b>'); marker.openPopup(); // Failed attempt to switch style $('.leaflet-popup-content-wrapper').addClass('new-style'); })</pre></p>
P粉702946921
P粉702946921

全部回复(1)
P粉403821740

可以向 bindPopup 方法传递一个 "options" 参数,该参数可以包含将添加到 div 的 "className" 属性对于弹出窗口:

marker.on('mouseover', function() {
    marker.bindPopup('<b>Hello world</b>',{className: 'mouseover-popup'});
    marker.openPopup();
})

marker.on('click', function() {
    marker.bindPopup('<b>Hello world</b>',{className: 'click-popup'});
    marker.openPopup();
})
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板