on()de jquery + .htaccess + urls amigables...

N

Hola, buenas tardes a todos/as...

Vereis.. tengo un problemilla...

Tengo una página, dividida en divs.. y que carga los contenidos desde un menú fijo.. lo hago gracias a:

$(document).ready(function(){ 
	$("#nav li").each(function(event){  
$(this).on('click','ul a',function(event){ event.preventDefault(); var href = $(this).attr("href");
$("#centro").load(href);
return false;
}); }); });

y en el menú:

 <ul id="nav"><br />
	  <li><a href="html/vista.html">Vista</a></li>
etc
etc

me carga genial y los jquery de la página cargada funcionan genial

mi problema:

si alguien intenta entrar directamente desde la barra de direcciones con:

www.misitio.com/vista.html (que es la dirección que se ve cuando pones el cursor encima) pues te sale no encontrada si está el otro directorio o te sale la página vista.html directamente (si está en ese directorio) si cargarse en el div que deberia.

Entoncessss.....

Hay alguna forma de hacer que si alguien entra directamente con www.misitio.com/vista.html.. se muestre esa página cargada en el div que le corresponde? como si se hubiese entrado desde el index..

he leido un montón sobre .htaccess y como redireccionar... pero.. es que no me sale en la barra de direcciones que tipo de dirección, que estructura lleva ese script y no se como ponerlo en el .htaccess...

alguien sabe hacerlo?

gracias..

glolg

Lo que tu dices yo lo haría por php mediante get, dentro del código detectar que get se ha enviado y variar el contenido con un include($_GET['loquesea']); Te paso un ejemplo que tengo hecho.

				
<?php 
 if(isset($_GET['sec'])){
  $se = $_GET['sec'];
    if($se==""){
       $se = "home";
    }else{
        if(file_exists('/web/'.$se.'.php')){
	   $se;
        }else{
           $se = 'home';
        }
     }
}else{
  $se= 'home';
}
include($se.'.php');
?>

Esto te quedaría en la dirección algo así http://www.misitio.com/vista.php?sec=loquesea
Ahora por .htaccess es fácil convertir esta url en amigable y para dejarla por ejemplo así;
http://www.misitio.com/vista/loquesea
Haríamos lo siguiente:

RewriteEngine On
Rewriterule ^vista/(.*)$ vista.php?sec=$1
N

hola.. antes de nada gracias por responder...

Creo que no logré expresarme bien, mis páginas cargadas son html.. con sus cabezeras con su todo...
Cuando puse el script de carga, en la barra de direcciones me salia la url... pero ahora no.. me sale directamente www.misitio.com/vista.html ... recuerdo que en la dirección salia "#" pero no la recuerdo entera.. y estoy intentando saber como acceder a ella para asi modificar el .htaccess, pero no puedo hacerlo... no lo consigo..
si que era una dirección considerada por google amigable.... pero no se su estructura.. :/

Usuarios habituales