elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


  Mostrar Temas
Páginas: [1]
1  Programación / Desarrollo Web / Problema al insertar iframes en DIVS en: 6 Marzo 2015, 16:51 pm
Hola muy buenas a todos. Llevo un par de días trabado en el proyecto que estoy haciendo, he buscado información tanto en español como inglés pero no doy con una posible solución.

Os cuento: Tengo un DIV ('capa') donde voy cambiando el contenido con getElementById('capa').innerHTML. Funciona perfecto, pero cuando el contenido es un iframe, un código embebido o similares (<object> por ejemplo) me cambia el código, me lo reordena. Y necesito que no me lo cambie porque en la aplicación comparo lo que tengo originalmente con lo que hay actualmente en la 'capa'.

Os pongo un ejemplo de lo que hace:
Si tengo esto:
Código
  1. <iframe width="400" height="200" src="https://www.youtube.com/embed/-3bKJZxBrMI" frameborder="0" allowfullscreen></iframe>

Me lo cambia por esto:
Código
  1. <iframe src="https://www.youtube.com/embed/-3bKJZxBrMI" allowfullscreen="" frameborder="0" height="200" width="400"></iframe>

Como podeis ver, el width y el height están cambiados de sitio, así como el allowfullscreen al que se le ha añadido ="".
Quiero que no se cambie, que lo muestre tal cual.

El valor del DIV lo cambio con el siguiente código:
Código
  1. document.getElementById('capa').innerHTML = embed;
donde embed lo extraigo de un archivo XML que tengo de la siguiente forma:
Código
  1. var embed = anotaciones[cent].getElementsByTagName("embed")[0].childNodes[0].nodeValue;

¿Alguien me puede hechar un cable? ¡¡No sé cómo continuar!!!

Mod: Obligatorio el uso (correcto) de las etiquetas GeSHi
2  Programación / Desarrollo Web / Problema con setInterval y links html en: 16 Febrero 2015, 20:47 pm
Muy buenas a todos, ojalá encuentre ayuda por aquí porque llevo una semana con el mismo problema. Seguro que es muy fácil de solucionar pero no doy con la tecla correcta.

A ver si consigo explicarme correctamente: Quiero mostrar un vídeo y en un DIV ir mostrando una serie de anotaciones que tengo en un archivo XML. En dicho XML tengo nodos con el texto, segundo inicial y segundo final.
El código que tengo funciona bien, muestra los datos del XML correctamente, las anotaciones en su sitio, etc... ¡Pero fallan los links!

Para que vayan saltando las anotaciones, ejecuto la función updateValues cada 0,1 segundos (con setInterval) para saber el tiempo actual del video. El problema es que si en una anotación hay un link html, no se puede hacer click sobre él correctamente, es como si se reiniciara cada 0,1 segundos.

Os dejo el código para que lo veais con detenimiento. ¡Necesito ayuda urgente! Mil gracias de antemano.

Código:
<html>
 <head>
  <title>Prueba leer xml</title>
  <script type="text/javascript" src="jwplayer/jwplayer.js"></script>
  <script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-2.0.3.js"></script>
 </head>
 <body>
 
<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/anotacionesoriginales.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;


var cent = 0;
var anotaciones=xmlDoc.getElementsByTagName("anotacion");

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;
       }
   }
   
    //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(anotaciones[cent].getElementsByTagName("texto")[0].childNodes[0].nodeValue != document.getElementById('capa').innerHTML){
    //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){


var img = anotaciones[cent].getElementsByTagName("img")[0].childNodes[0].nodeValue; //sacamos el valor del nodo img. Si lo definimos antes javascript da error al no encontrar nada.
document.getElementById('capa').innerHTML = img + "<br>" +  anotaciones[cent].getElementsByTagName("texto")[0].childNodes[0].nodeValue;

}else{
document.getElementById('capa').innerHTML = " ";
}

}
}
</script>

<script type="text/javascript">
$(function(){

})
setInterval(function(){
$('#currentTime').html($('#video_container').find('video').get(0).currentTime); //esta linea y la de abajo se pueden quitar. Solo sirven para ver en current time en directo.
$('#totalTime').html($('#video_container').find('video').get(0).duration);   
updateValues();
},100)
</script>

 <div id="capa" style="width:480px; height:135px; background-color: #CAF3F0;">
    ANOTACIONES:<br>
    </div>

<div id="capa2" style="width:480px; height:135px; background-color: #CAF3F0;">
    <a href="http://google.com">link text</a>
    </div>

<div id="video_container">
    <video height=270 width=480 preload="none" controls="" id="video" tabindex="0">
      <source type="video/mp4" src="Upload/videos/videoff.mp4" id="mp4"></source>
      <p>Your user agent does not support the HTML5 Video element.</p>
    </video>
</div>

<div>Current Time : <span  id="currentTime">0 </span></div>
<div>Total time : <span id="totalTime">0</span></div>

 </body>
</html>
3  Programación / Programación General / Lenguaje de programación para video procesamiento en: 19 Septiembre 2014, 11:56 am
Hola buenas, he estado buscando algún foro sobre programación y he encontrado este. He estado leyendo algunos post y he visto que hay gente por aquí que sabe muchísimo sobre estos temas, por lo que creo que es el lugar adecuado para preguntar.

Voy a empezar mi proyecto final de carrera, se trata de una aplicación que permita añadir anotaciones a los vídeos, algo parecido a lo que hace Youtube pero bastante más sencillo. El usuario podría importar su vídeo y añadir anotaciones de texto en cualquier punto, con la duración deseada, cambiar el tipo de letra, color, etc...

Mi problema es que no estoy seguro de qué lenguaje de programación utilizar, me he estado informando pero aun así no me decido por ninguno. Estoy entre: Matlab, php y C++.

Me defiendo con los 3, pero con los que más familiarizados estoy son Matlab y php.

¿Qué lenguaje de estos 3 veis mejor para realizar este proyecto? Sobre todo quiero saber con cuál sería más sencillo y viable implementarlo.

Un saludo.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines