tengo un problema al intentar ejecutar un script AJAX desde un boton flash, el código es el siguiente:
Código:
titulo.htm<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>
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';
}
?>
el código de los botones flash es:
Código:
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.on (release){ getURL(" javascript:actualizaTitle('primero')"); }
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