Vous l’attendiez avec impatience, la voila! La fin du tutoriel pour faire une navigation ajaxifiée tout en restant accessible. Un petit point sur ce que l’on a déjà fait :
- La partie php qui va chercher le bon article en fonction des paramètres
- Notre squelette XHTML
- un peu d’habillage CSS
Nous allons maintenant jQueriser notre document. Cette transformation va se présenter en trois parties.
Appeler nos script
Il faut modifier notre squelette xhtml afin de lier nos scripts à notre page. Cela se passe entre les balises head. Il faut préalablement télécharger jQuery si vous ne l’avez pas déjà.
La transformation des liens
En premier lieu nous allons modifier tous nos liens. En effet ils se présentaient sous cette forme :
- <a href="index.php?page=1">page 1</a>
Or, si nous les gardons sous cette forme notre page va s’afficher “en cascade” puisque nous afficherions dans notre div “contenu” notre index.php.
- //pour chaque lien contenu dans un élément de liste
- $('li>a').each(function() {
- //on récupere le contenu de l'attribut href
- var link=$(this).attr("href");
- //et on remplace le index par page pour obtenir un lien : page.php?page=x&article=x
- $(this).attr("href",link.replace("index","page"));
- });
L’ “ajaxification” des liens
Maintenant il faut faire appel à la méthode load de jquery pour charger notre article dans le div “contenu”.
- //à chaque clic sur un lien contenu dans un élément de liste
- $('li>a').click(function() {
- //on récupère l'attribut href
- var link=$(this).attr("href");
- //et on charge le document avec load dans le div d'id contenu
- $("#contenu").load(link);
- return false;
- });
Le script final :
- $(document).ready(
- //construction du menu
- function()
- {
- //pour chaque lien contenu dans un élément de liste
- $('li>a').each(function() {
- //on récupere le contenu de l'attribut href
- var link=$(this).attr("href");
- //et on remplace le index par page pour obtenir un lien : page.php?page=x&article=x
- $(this).attr("href",link.replace("index","page"));
- });
- //à chaque clic sur un lien contenu dans un élément de liste
- $('li>a').click(function() {
- //on récupère l'attribut href
- var link=$(this).attr("href");
- //et on charge le document avec load dans le div d'id contenu
- $("#contenu").load(link);
- return false;
- });
- }
- )
Voilà, vous devriez avoir un menu parfaitement fonctionnel. Vous pouvez modifiez votre fichier page.php pour faire des includes de vos fichiers dans les switchs plutôt que d’écrire votre texte en dur.
Montrez nous vos réalisations et n’hésiter pas à faire des remarques, poser des questions, etc ![]()
Autres articles intéressants :
- [css] bien comprendre les "floats"
- [gestion] liste d'outils de gestion de projet by smashing mag
- [adobe] version de démo de la suite CS4
- [design] [kuler] enfin de l'harmonie dans nos couleurs
- [google] actualité récente et nouveautés
Articles les plus actifs :
- [tuto jquery] drag ‘n drop avec sauvegarde automatique en base de données (2/2) (28)
- [tuto mashup] Google maps sur votre site : c'est possible! (version statique) (22)
- [tuto jquery] drag ‘n drop avec sauvegarde automatique en base de données (1/2) (19)
- [tuto web] cadre avec bordures extensibles valide xhtml/css (17)
- [tuto mashup] Galerie photo animée via Flickr : animer votre galerie (2/2) (17)
- [vu sur le net] #1 résumé (7)
- [tuto flex] hello world en flex: il y a un début à tout! (6)
- [vu sur le net] #2 dominante développement et entrepreneuriat (6)
- Qui suis-je? (4)
- [annonce] La patate "fuzz" sur le web!! (et j'aime pas olivier martinez :p) (4)













![[certification MySQL] du nouveau sur les dates !](http://antoine.guiral.info/wp-content/themes/Forte-fr/images/no-image.gif)










Je suis un passionné du monde du web et plus particulièrement du développement web. Principalement autodidacte je suis également en dernière année d'école d'ingénieur en informatique à 3IL. Je vous fait part dans ce blog de ma passion et de mes découvertes.
Aucun utilisateur ont (ou a) réagi à cet article
Laissez votre commentaire ci dessous