jQuery Mobile usa ajax come scelta preferienzale per caricare altri contenuti.
Usiamo come esempio questa semplice pagina:
<!DOCTYPE html> <html> <head> <title>Linking AJAX</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"> <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.1.min.js"></script> <script type="text/javascript" src="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"></script> </head> <body> <div data-role="page"> <div data-role="header"><h1>Linking AJAX</h1></div> <div data-role="content"> <p><a href="04b-link.html">Link to an external file</a></p> <p><a href="04b-link.html" data-prefetch>Prefetch the external file</a></p> </div> </div> </body> </html>
Come si può vedere esaminadno il codice sorgente della pagina caricata, che non porta con sé il caricamento agli script necessari e al css, effettivamente lo schema utilizzato è ajax, il secondo link procede anche a un precaricamento, tecnica utile per velocizzare la fruizione dei contenuti ma della quale è bene non abusare.
Il codice della 04b-link.html:
<!DOCTYPE html> <html> <head> <title>Linked Page</title> </head> <body> <div data-role="page"> <div data-role="header"><h1>File linkato</h1></div> <div data-role="content"> <p><a href="04-linking-ajax.html">Link al file originale</a></p> </div> </div> </body> </html>
Accedendo direttamente a questa pagina apparirà appunto completamente non formatta a riprova di quanto detto.
L’esempio