Comunidad de diseño web y desarrollo en internet online

AJAX y Flash

Citar            
MensajeEscrito el 24 Ene 2009 11:32 pm
No logro que reproduzca el swf.
Sobre un SWF debo cargar otro, pero ya en la página, en el HTML, no un loadMovie, sino que son dos swf a la vez, uno arriba del otro, tengo esto:

Código :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento</title>
<link rel="stylesheet" href="estilos.css" type="text/css" media="screen" />
<!-- JavaScript -->
<script type="text/javascript" src="javascript/swfobject.js"></script>
<script type="text/javascript">
function nuevoAjax(){
   var xmlhttp=false;
    try {
       xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
       try {
          xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
       } catch (E) {
          xmlhttp = false;
       }
     }

   if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
       xmlhttp = new XMLHttpRequest();
   }
   return xmlhttp;
}

function cargarContenido(){
   var contenedor;
   contenedor = document.getElementById('MiDiv');
   ajax=nuevoAjax();
   ajax.open("GET", "galeria.php",true);
   ajax.onreadystatechange=function() {
      if (ajax.readyState==4) {
         var x = document.getElementById("miDiv");
         contenedor.innerHTML = ajax.responseText
      }
   }
    ajax.send(null)
}

function vaciarContenido(){
   var contenedor;
   contenedor = document.getElementById('MiDiv');
   ajax=nuevoAjax();
   ajax.open("GET", "blank.php",true);
   ajax.onreadystatechange=function() {
      if (ajax.readyState==4) {
         var x = document.getElementById("miDiv");
         contenedor.innerHTML = ajax.responseText
      }
   }
    ajax.send(null)
}

</script>


</head>

<body>
<div id="contenedor">
    <a onmouseover="cargarContenido()" >Ayuda</a>
    <div id="miDiv" style="position:absolute; z-index:99; width:480px; height:300px; top:210px; left:300px;">
    
    </div>
    
    <div id="flashcontent">
    Debes tener la versión 9.0 de FlashPlayer
    </div>
    <script type="text/javascript">
      var so = new SWFObject("00_base.swf", "mymovie", "1008", "655", "9", "#AE0011");
      so.addParam("quality", "high");
      so.addParam("wmode", "transparent");
      so.write("flashcontent");
   </script>
   
</div>
</body>
</html>

Si pongo el swf en el div directamente funciona, pero si lo hago desde ajax (llamo a la funcion desde el flash madre).
El Ajax funciona bien, pero no me reproduce el swf.
Cómo puedo solucionar esto?

Por boratlon

Claber

139 de clabLevel



 

msie7
Citar            
MensajeEscrito el 25 Ene 2009 04:38 am
Esto se debe a que hay un problema de procedimiento call, la carga externa de un SWF en otra aplicacion, lo que haces seria como un Flash embebido, supongo que no puedes hacerlo, ya que el contenido o la pelicula o aplicacion flash es un compilado completo y debes hacerlo todo en un solo proyecto, si estoy equivocado estaras usando Flash CS4.

Saludos

Por Siriö

624 de clabLevel

4 tutoriales
1 articulo

 

Germany

msie7
Citar            
MensajeEscrito el 25 Ene 2009 06:44 am
Holas, asi a ojo de buen cubero y sin analizarlo detenidamente, yo sabia que getElementById es case-sensitive, por tanto respeta mayusculas y minusculas :P, prueba con poner esto:

Código Javascript :

document.getElementById('miDiv')


Suerte.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 25 Ene 2009 02:29 pm
nop... tiene que ser algún problema con flash... si hago un include del php que contiene el swf, lo abre, pero si lo llamo por ajax no

Por boratlon

Claber

139 de clabLevel



 

msie7
Citar            
MensajeEscrito el 05 Feb 2009 02:23 pm
Hola!!

Tenia el mismo problema pero despues de documentarme un poco más y analizar el código encontre algo sobre la seguridad de Flash Player 8.

http://www.adobe.com/es/devnet/flash/articles/fplayer8_security_09.html

Son dos cosas que hay que tener en cuenta:

1. Asegurarse que esta línea esté en el html donde está el swf. Esto es por temas de seguridad.

Código :

<param name="allowScriptAccess" value="sameDomain">


2. Tener en cuenta la ubicación del archivo swf. Debes ajustar la ruta teniendo en cuenta la ubicaciòn del html que lo invoca y NO del html que lo contiene.

lo tienes así:

Código :

<param name="movie" value="TuArchivo.swf"/>


lo cambias por:

Código :

<param name="movie" value="contenidos/TuArchivo.swf"/>


Saludos desde Colombia!

Por fabiokastillo

3 de clabLevel



Genero:Masculino  

msie7

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.