Complemento de Google Earth: los navegadores que no sean FF muestran marcado HTML cuando usan .getBalloonHTML() para volcar el contenido de la marca de posición en un DIV

Estoy tratando de volcar el contenido de la marca de posición de Google Earth en un div fuera del complemento, y funciona como se esperaba en FireFox, pero no en Chrome, Safari o IE. Los últimos 3 muestran:

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

al principio del contenido de la marca de posición y el marcado HTML se muestra con el resto del contenido. FF analiza el contenido como HTML real y, por lo tanto, se muestra correctamente formateado como se esperaba.

¿Alguien sabría cómo hacer que los otros navegadores analicen el contenido como HTML en lugar de lo que están haciendo en este momento?

El siguiente es mi código de complemento de 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;

Estoy usando fetchKml para cargar los datos KML desde otra URL que está configurada de la siguiente manera:

<?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>

Muchas gracias de antemano.

preguntado el 22 de mayo de 12 a las 15:05

¡No importa! Creo que lo descubrí. No tiene nada que ver con Google Earth o KML. ¡Más bien, el problema depende del uso de innerHTML e innerText (o incluso textContent)! Lo siento. -

1 Respuestas

Me lo imaginé. No tiene nada que ver con Google Earth o KML. Por alguna razón, asigné accidentalmente el contenido de la marca de posición a texto interno. Solo necesitaba asignarlo a innerHTML.

contestado el 23 de mayo de 12 a las 05:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.