在 Internet Explorer 中查看 html 时不显示 Folium 弹出窗口

Folium popup doesn't show when viewing html in Internet Explorer

HTML 当包含 Folium Popups 时,Internet Explorer 中不显示。

我花了几个小时试图让我的 HTML 地图显示在我的浏览器中,其中包含 folium 弹出窗口(没有它们工作正常)。经过几个小时的尝试,我决定尝试在我的 phone 上打开 HTML(使用 google chrome)并且它工作正常。所以基本上,我断定这是我的 Internet Explorer 的问题。知道哪里出了问题,或者是否有其他方法可以使用 Folium 显示弹出窗口?

你有没有在IE中使用过F12开发工具来检查控制台是否有任何错误?

此外,我认为Folium本身可能与IE存在兼容性问题。即使是 official examples 也无法在 IE 中显示。你可以在IE中打开link,你会发现samples的结果是空白的。

你可以检查一下this post to see if the backticks contained in the generated html for the Popup element avoids IE to render the map. But you could see the member of python-visualization said that folium and leaflet itself have some IE incompatibilities and there is no promise to work on that browser. And in this post,另外请注意IE.

不支持数据uri作为src属性的IFrame

我想出了一个非常好的解决方案。

所以问题是反引号 (`) 不适用于 Internet Explorer,所以我只是将它们替换为单引号 ('),现在一切正常。

我用以下方法替换了它们:

with open(oldhtml) as inf:
        txt = inf.read()
        txt = txt.replace("`","'")

with open(newhtml, "w") as outf:
        outf.write(txt)