2010-12-19 10 views
17
jQuery(document).ready(function(){ 
    $("#red-products").hide(); 
    $("#content-info").click(function(event){ 
     $("#red-products").hide(); 
     $("#red-information").show(); 
    }); 

    $("#content-product").click(function(event){ 
     $("#red-information").hide(); 
     $("#red-products").show(); 
    }); 

    $("#more").click(function(event){ 
     load(this.href); 
     return false; 
    }); 

}); 

Como puede ver, de forma predeterminada #red-products está oculto y #red-information es visible. A veces quiero #red-products a ser visible y oculto #red-information, que significa algo así comoObtén #anchor for URL using jQuery?

http://localhost/networks2/profile.php?id=1&offset=1#products

para mostrar y ocultar #red-products#red-information. Y

http://localhost/networks2/profile.php?id=1&offset=1#information

para ocultar y mostrar #red-products#red-information.

¿Cómo puedo leer el ancla de la URL usando jQuery y ocultar/mostrar las secciones apropiadas?

Respuesta

36

Puede cambiar la piel inicial se base en window.location.hash, mediante la sustitución de éste:

$("#red-products").hide(); 

Con esta:

$("#red-products, #red-information").hide(); 
$("#red-" + (window.location.hash.replace("#", "") || "information")).show(); 

Esto ocultará tanto inicialmente, a continuación, muestran la hasd (#red-hashhere) , o predeterminado para mostrar #red-information como lo tiene ahora.

+0

no lo consigo no funciona: | –

+0

@Adam - esa no es una descripción muy útil :) lo que no funciona ... ¿y estás usando las URL exactamente como lo tienes en la pregunta? –

+0

ups location mising h: D gracias alot matee! –