Además, cuando pruebo en un smarphone y cargo el contenido nuevo, el navegador vuelve se pone a cargar en vez de hacerlo dinámicamente. El código que uso lo he cogido de la url siguiente y SÍ se carga dinámicamente también en smartphone:
[URL="https://d2o0t5hpnwv4c1.cloudfront.net/011_jQuerySite/sample/index.html"]https://d2o0t5hpnwv4c1.cloudfront.net/011_jQuerySite/sample/index.html[/URL]
El contenido que cambia está en un div con id "dinamico", y uso el código que está a continuación:
Código:
$( document ).on( "ready",function( e ) {
var hash = window.location.hash.substr(1);
var href = $('#menu li a').each(function(){
var href = $(this).attr('href');
if(hash==href.substr(0,href.length-5)){
var toLoad = hash+'.html #dinamico';
$('#dinamico').load(toLoad)
}
});
$( "#menu" ).on( "click", "li a", function( e ) {
var toLoad = $(this).attr('href')+' #dinamico';
$('#dinamico').hide('fast',loadContent);
window.location.hash = $(this).attr('href').substr(0,$(this).attr('href').length-5);
function loadContent() {
$('#dinamico').load(toLoad,'',showNewContent())
}
function showNewContent() {
$('#dinamico').show('normal'); //,hideLoader());
}
return false;
});
});
Por eso no entiendo por qué no consigo lo que pretendo hacer.