Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Ejecutar ajax desde flash (actionscript)

Estas en el tema de Ejecutar ajax desde flash (actionscript) en el foro de Frameworks JS en Foros del Web. Buenas tardes a tod@s, tengo un problema al intentar ejecutar un script AJAX desde un boton flash, el código es el siguiente: Código: <html> <head> ...
  #1 (permalink)  
Antiguo 09/01/2008, 07:41
Avatar de editjj  
Fecha de Ingreso: febrero-2006
Ubicación: madrid
Mensajes: 34
Antigüedad: 18 años, 2 meses
Puntos: 0
Ejecutar ajax desde flash (actionscript)

Buenas tardes a tod@s,

tengo un problema al intentar ejecutar un script AJAX desde un boton flash, el código es el siguiente:
Código:
<html>
<head>
<title></title>
<script language="JavaScript" 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 actualizaTitle(enlace){
        ajax=nuevoAjax();
        ajax.open("GET", "tituloajax.php?sec="+enlace, true);
        ajax.onreadystatechange=function()
        { 
            if (ajax.readyState==1)
            {
                document.title = "Cargando nuevo titulo";
            }
            if (ajax.readyState==4)
            { 
                document.title = ajax.responseText;
            } 
        }
        ajax.send(null);
        
}
</script>

</head>

<body>
<p>
<ul>
  <li><a href="javascript:actualizaTitle('primero')">Cambiar title a primero</a></li>
  <li><a href="javascript:actualizaTitle('segundo')">Cambiar title a segundo</a></li>
  <li><a href="javascript:actualizaTitle('tercero')">Cambiar title a tercero</a></li>
</ul>    
</p>
<p>
  <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="245" height="215">
    <param name="movie" value="flash/pruebastitle.swf" />
    <param name="quality" value="high" />
    <embed src="flash/pruebastitle.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="245" height="215"></embed>
  </object>
</p>
</body>
</html>
titulo.htm

Código PHP:
<?

if ($_GET['sec'] == "primero"){
    echo 
'titulo primero';
} else if (
$_GET['sec'] == "segundo"){
    echo 
'titulo segundo';
} else if (
$_GET['sec'] == "tercero"){
    echo 
'titulo tercero';
}

?>
tituloajax.php

el código de los botones flash es:
Código:
on (release){
    getURL(" javascript:actualizaTitle('primero')");
}
Si se hace click en los enlaces HTML el titulo cambia sin problema, pero al hacer click en los botones FLASH el titulo no cambia, y deja 'bloqueados' los links HTML, una vez presionado un boton FLASH los HTML dejan de funcionar.

He probado a incluir un alert al final de la funcion actualizaTitle() para comprobar que llega a ejecutarla desde FLASH y cual es mi sorpresa, esta última orden se ejecuta.

En FIREFOX funciona perfectamente, pero en IE 6 y 7 no.

Soy inexperto en AJAX, lo más que he hecho es utilizar algunas librerias muy concretas para mis proyectos. Agradeceria una ayuda o la indicación del camino a seguir para poder solucionar este problema.

muchas gracias

Última edición por editjj; 10/01/2008 a las 03:32 Razón: añadir más información para aislar el problema
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:16.