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