【问题标题】:Google Earth Plugin: Browsers other than FF show HTML markup when using .getBalloonHTML() to dump placemark contents into a DIVGoogle 地球插件:FF 以外的浏览器在使用 .getBalloonHTML() 将地标内容转储到 DIV 时显示 HTML 标记
【发布时间】:2012-05-23 12:31:44
【问题描述】:

我正在尝试将 Google 地球地标内容转储到插件外部的 div 中,它在 FireFox 中按预期工作,但在 Chrome、Safari 或 IE 中却没有。后3个显示:

<!--Content-type: mhtml-die-die-die-->

在地标内容的开头,HTML 标记与其他内容一起显示。 FF 将内容解析为实际的 HTML,因此它按预期格式正确显示。

有人知道如何让其他浏览器将内容解析为 HTML,而不是他们现在正在做的任何事情吗?

以下是我的GE插件代码:

currentKmlObject = kmlObject;
ge.getFeatures().appendChild(currentKmlObject);
google.earth.addEventListener(kmlObject, 'click', function(event) {
    event.preventDefault(); 
    var placemark = event.getTarget();
    var content = placemark.getBalloonHtml();
    document.getElementById('balloonContents').innerHTML = content;
    document.getElementById('balloonContents').innerText = content;

我正在使用 fetchKml 从另一个 URL 加载 KML 数据,设置如下:

<?xml version="1.0" encoding="utf-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2">
    <Document>
        <Placemark>
            <name></name>
            <description>
                <![CDATA[   HTML CONTENTS ]]>
            </description>
            <Point>
                <coordinates></coordinates>
            </Point>
         </Placemark>
    </Document></kml>

非常感谢。

【问题讨论】:

  • 没关系!我想我想通了。它与 Google 地球或 KML 无关。相反,问题取决于使用 innerHTML 和 innerText(甚至是 textContent)!对不起。

标签: kml google-earth-plugin


【解决方案1】:

我想通了。它与 Google 地球或 KML 无关。出于某种原因,我不小心将地标内容分配给了 innerText。我只需要将它分配给 innerHTML。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-11
    • 1970-01-01
    • 1970-01-01
    • 2021-11-21
    相关资源
    最近更新 更多