Hola compañer@s, buen día!!!
Creo que el título está muy enredado, el problema es que yo estoy igual con mi duda.
Tengo una página (
index.php) la cual contiene un menú que con una función AJAX la cual carga en una div (
der_main) el contenido de otras páginas de mi sitio (o sea la sección "nosotros", llama a la página
nosotros.html y la carga en la div
der_main), hasta ahí no tengo ningún problema.
El problema viene en que cuando en el buscador del sitio busco algo doy enter, pagina los resultados y doy click en uno para ver su descripción me lleva a la página
wex.php, una vez estando allí, el menu ya no funciona porque ya no está esa capa
der_main, en la página
wex.php.
Mi duda es como puedo hacer para hacer un vínculo que me dirija a
index.php y a la vez ya cargue el contenido específico en la capa, algo así como los puntos de ancla del html (¿¿si se llaman así ??).
Este es el script ajax que carga el contenido del menu en la capa
der_main:
Código:
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 Cargar(url){
var contenido, preloader;
Bloquear = document.getElementById('der_main');
preloader = document.getElementById('preloader');
//creamos el objeto XMLHttpRequest
ajax=NuevoAjax();
//peticionamos los datos, le damos la url enviada desde el link
//modificacion
switch(url){
case "Untitled-2.html": ajax.open("POST", url,true);
break;
case "archivo2.html": ajax.open("POST", url,true);
break;
case "inicio.html": ajax.open("POST", url,true);
break;
}
ajax.onreadystatechange=function(){
if(ajax.readyState==1){
preloader.innerHTML = "Cargandoâ?¦";
//modificamos el estilo de la div, mostrando una imagen de fondo
preloader.style.background = "url('images/loading.gif') no-repeat";
}else if(ajax.readyState==4){
if(ajax.status==200){
//mostramos los datos dentro de la div
Bloquear.innerHTML = ajax.responseText;
preloader.innerHTML = "Cargado.";
preloader.style.background = "url('images/loading.gif') no-repeat";
}else if(ajax.status==404){
preloader.innerHTML = "La página no existe";
}else{
//mostramos el posible error
preloader.innerHTML = "Error:".ajax.status;
}
}
}
ajax.send(null);
}
- - - En la página index.php llamo a la función con esto (obvio antes está el script con la función):
Código HTML:
<ul id="menu">
<li><a onclick="Cargar('inicio.html')" >Inicio</a></li>
<li><a onclick="Cargar('Untitled-2.html')">Productos</a></li>
<li><a onclick="Cargar('Untitled-2.html')">Servicios</a></li>
<li><a onclick="Cargar('Untitled-2.html')">Contacto</a></li>
</ul>
<div id="der_main">Aquí se carga el contenido del menú</div>
y la
wex.php tiene lo anterior de
index.php solo que la capa
der_main ya no está
Bueno sin más por el momento me despido, agradeciendo de antemano su ayuda.