¿Cómo cambia GitHub la URL sin volver a cargar una página?

Vaya a cualquier página de GitHub y click cualquiera de los directorys / files y observe cómo cambia la URL, pero solo se actualiza una parte de la página. No hay recarga de página completa.

¿Cómo hago algo similar usando jQuery?

¿Funciona esto en la mayoría de los browseres (estoy usando Chrome)?

Usan la API de historial , o específicamente, history.pushState() .

Puede usar esto, jQuery no es obligatorio, pero hay complementos como history.js .

Esto funciona en la mayoría de los browseres, a saber, Chrome, Safari y Firefox. IE10 y superior lo admite. En IE más antiguos, puede recurrir al uso del hash ( window.location.hash ).

GitHub también blogueó sobre esto .

Github usa PJAX (Ref) . Puede ver acerca de jquery-pjax aquí . Tenga en count que esta característica no está cubierta por el soporte de todos los browseres, hay algunos browseres que no pueden usar estos beneficios.