Muy buenas,
al final no sé muy bien cómo pero se solucionó cambiando las etiquetas de php. No tengo ni idea de por qué ahora sí funciona y antes no lo hacía.
Envío el código actualizado a la versión de xajax 0.5 por si a alguien le puede ser de utilidad.
<?php
// Incluye la librería de clases xajax
require ('xajax/xajax_core/xajax.inc.php');
// Se crea una nueva instancia de un objeto xajax
$xajax = new xajax();
// Define la ruta para las llamadas a xajax
$xajax->configure('javascript URI','xajax/');
// Registramos el nombre de la función que queremos llamar mediante xajax
$xajax->register(XAJAX_FUNCTION, 'llamada_servidor');
// Procedimiento por el que xajax maneja las peticiones realizadas antes de enviar salida alguna
$xajax->processRequest();
// Función en la que se realiza una llamada al servidor
function llamada_servidor()
{
// Función que se realiza: pausa de 2 segundos
sleep(2);
// Se crea una nueva instancia de un objeto xajaxResponse
$objResponse = new xajaxResponse();
// Envía al navegador el comando como respuesta a la petición xajax
$objResponse->Assign("capa_actualiza","innerHTML","Finalizado");
return $objResponse;
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Mostrar imagen de carga de datos</title>
<?php
// Permite a xajax generar el código javascript necesario
$xajax->printJavascript();
?>
<script type="text/javascript">
<!--
// Función que muestra la imagen de "cargando..." mientras se realizan las acciones con el servidor
function muestra_cargando(){
xajax.dom.create("capa_actualiza","div", "cargando");
xajax.$('cargando').innerHTML='<img src="cargando.gif" alt="cargando..." border="0">';
}
// Función que se lleva a cabo cuando se ha devuelto la respuesta del servidor
function oculta_cargando(){
// lo que sea
}
// Determina qué función se llama mientras se espera respuesta del servidor
xajax.callback.global.onResponseDelay = muestra_cargando;
// Determina qué función se llama cuando se ha devuelto la respuesta del servidor
xajax.callback.global.onComplete = oculta_cargando;
// --></script>
</head>
<body>
<div id="capa_actualiza">
<a href="javascript:void(xajax_llamada_servidor())">Llamada al servidor</a>
</div>
</body>
</html>
Respecto a lo de mezclar los objetos php con javascript creo que es porque el framework xajax "interactúa" (no encuentro la mejor palabra para poder decirlo) con javascript. Tampoco tengo mucha idea de xajax y prácticamente nada de javascript, así que poco puedo aporta para ponerlo un poquito más claro.
De jquery... no tengo ni idea de lo que es
pero ya lo aprenderé
.
En definitiva, el código por fin es funcional, requiriendo incluir xajax 0.5 en la ruta necesaria y la imagen gif que deseemos visualizar durante la carga.
Muchas gracias por haber contestado al mensaje.
Un saludo,
Novalida.