单击标记野生动物园时弹出窗口未打开

Posted

技术标签:

【中文标题】单击标记野生动物园时弹出窗口未打开【英文标题】:Popup does not open when clicking on marker safari 【发布时间】:2021-03-29 19:38:51 【问题描述】:

我正在显示来自 django 模型的位置,例如带有弹出窗口的标记:

我的视图文件

<script>
        const MAP_KEY = " MAP_KEY ";
        const added_place_json = JSON.parse(' added_place_json | escapejs');
</script>

我的 js 文件

for (const place of added_place_json)
L.marker([place.fields.lat, place.fields.long]).bindPopup(
    `<div class="card" style="width: 15rem;">\n` +
    ` <h6 class="card-header">Name place:<br>$place.fields.name</h6>\n` +
    `  <div class="card-body">\n` +
    `    <p class="card-text" style="overflow: scroll">Place comment:<br>$place.fields.comment</p>\n` +
    `  </div>\n` +
    `</div>`
).addTo(map)

;

这在 google chrome 上运行良好,但不适用于 safari。当我在 Safari 中单击标记时,什么也没有发生

【问题讨论】:

【参考方案1】:

这是 Leaflet 1.7.1 的错误,请参阅Leaflet #7255

在最新的传单主版本中它正在工作,请参阅Issue Comment

所以我建议您将 Leaflet-src 从 Leaflet Release 1.7.1 更改为 Github 上的 master 分支

【讨论】:

我有问题:marker-icon-2x.png:1 GET localhost:8000/static/place_remember/leaflet/leaflet.css/images/… 404(未找到) 查看***.com/questions/47313165/… 这个问题已经存在将近 9 个月了,并且仍在生产版本中。不知道如何在 package.json 中处理它(git 分支不包含 dist JS,它只在 zip 文件中)。我喜欢传单,但那是一个炫耀。 @hvsp 的回答实际上是最有帮助的。在 v1.8 发布之前,您可以使用选项 tap: false 简单地初始化地图。问题 #7255 的修复(除其他外)将 tap 选项的默认值从 true 更改为 false【参考方案2】:

如果由于某种原因您必须坚持使用 1.7.1 并且您不需要处理“taphold”事件,则使用 tap: false 启动地图可能会为您解决此问题。 (这里建议https://github.com/Leaflet/Leaflet/issues/7331#issuecomment-742454380)

【讨论】:

此修复也适用于my issue,其中弹出窗口确实只出现了一瞬间,并且只有在稍微点击标记右侧时才能正常工作。

以上是关于单击标记野生动物园时弹出窗口未打开的主要内容,如果未能解决你的问题,请参考以下文章

单击按钮时弹出关闭并重定向到不同的页面!

ROBOT Framework无法单击弹出接受按钮

通过单击 iframe 打开弹出窗口

win10系统打开软件时弹出“用户帐户控制”窗口怎么关闭

win10系统打开软件时弹出“用户帐户控制”窗口怎么关闭

仅显示一个标记反应图 gl 的弹出窗口