document.getElementById('capa').innerHTML = embed;
donde embed lo extraigo de un archivo XML que tengo de la siguiente forma:var embed = anotaciones[cent].getElementsByTagName("embed")[0].childNodes[0].nodeValue;
<script type="text/javascript">
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","upload/anotaciones/anotaciones.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
var cent = 0;
var anotaciones=xmlDoc.getElementsByTagName("anotacion");
</script>
<script type="text/javascript">
function updateValues() {
var vid = document.getElementById("video");
var current = vid.currentTime;
for(i=0;i<anotaciones.length;i++){ //recorremos todas las anotaciones buscando en qué lugar nos encontramos. Si current está entre seg y seg2 es que hemos encontrado donde estamos, en qué anotación
if(current>=anotaciones[i].getElementsByTagName("seg")[0].childNodes[0].nodeValue && current<anotaciones[i].getElementsByTagName("seg2")[0].childNodes[0].nodeValue){
cent=i;
}
}
var img = anotaciones[cent].getElementsByTagName("img")[0].childNodes[0].nodeValue;
var embed = anotaciones[cent].getElementsByTagName("embed")[0].childNodes[0].nodeValue;
//si estamos entre seg y seg2 vamos a mostrar el comentario, sino no mostraremos nada
if(current>=anotaciones[cent].getElementsByTagName("seg")[0].childNodes[0].nodeValue && current<anotaciones[cent].getElementsByTagName("seg2")[0].childNodes[0].nodeValue){
//ahora hacemos un if para que los elementos de la capa SOLO CAMBIEN cuando lo que hay en el xml sea diferente de lo que hay en la capa. Así la capa no se actualiza cada 0,1 segundos
if(img + "<br>" + anotaciones[cent].getElementsByTagName("texto")[0].childNodes[0].nodeValue + "<br>" + embed != document.getElementById('capa').innerHTML){
document.getElementById('capa').innerHTML = img + "<br>" + anotaciones[cent].getElementsByTagName("texto")[0].childNodes[0].nodeValue + "<br>" + embed;
if(embed!=""){ //si hay un embed (aplicacion, video, flash) que el video se pare.
pausarlink();
var mostrarcapa=document.getElementById('capa').innerHTML;
alert(mostrarcapa);//esto es para mostrar el contenido de 'capa' una vez lo hemos metido.
}
}
}else{
document.getElementById('capa').innerHTML = " ";
}
}</script>
<div id="capa" style="width:480px; height:135px; background-color: #CAF3F0;">
ANOTACIONES:<br>
</div>
<![CDATA[<iframe width="400" height="200" src="https://www.youtube.com/embed/-3bKJZxBrMI" frameborder="0" allowfullscreen></iframe>]]>
Por otro lado, he hecho lo que dices y he puesto un alert para que me muestre lo que extrae del XML. Curiosamente, lo extrae perfectamente, es decir, lo que saca del XML está perfecto, sin modificar nada. Se cambia una vez lo meto dentro del DIV con innerHTML. ¡Me estoy volviendo loco! jajajaj <div id="capa23232" style="width:480px; height:135px; background-color: #CAF3F0;">
<iframe width="400" height="200" src="https://www.youtube.com/embed/-3bKJZxBrMI" frameborder="0" allowfullscreen></iframe>
</div>
var mostrarcapa23=document.getElementById('capa23232').innerHTML;
alert(mostrarcapa23);