[AJAX] Changer le contenu d'un block, et marquer l'url
Bonjour,
je suis actuellement le webmaster d'un serveur privé world of warcraft. Je compose un nouveau site, malheureusement, on me demande de faire un site dit dynamique, et donc de faire changer les contenu de la page sans pour autant rafraichir celle-ci. Le script de son coté est bon, le contenu de notre block se change correctement, l'url se modifie seul grace aux liens, mais lorsque l'on rafraîchi la page, le contenu par défaut réapparait, et lorsque que l'on effectue un retour en arrière ou encore un suivant, c'est le contenu chargé grace au lien qui ne change plus.
Voici le code javascript utilisé :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
// here we define global variable
var ajaxdestination="";
function getdata(what,where) { // get data from source (what)
try {
xmlhttp = window.XMLHttpRequest?new XMLHttpRequest():
new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) { /* do nothing */ }
document.getElementById(where).innerHTML ="<div id='text-haut-contenu'><div id='text-titre-contenu'>Chargement du module :</div></div><div id='text-milieu-contenu'><div class='text-text-contenu'><center><img src='images/icones/ajax-loader.gif'></center></div></div><div id='text-bas-contenu'></div>";
// we are defining the destination DIV id, must be stored in global variable (ajaxdestination)
ajaxdestination=where;
xmlhttp.onreadystatechange = triggered; // when request finished, call the function to put result to destination DIV
xmlhttp.open("GET", what);
xmlhttp.send(null);
return false;
}
function triggered() { // put data returned by requested URL to selected DIV
if (xmlhttp.readyState == 4) if (xmlhttp.status == 200)
document.getElementById(ajaxdestination).innerHTML =xmlhttp.responseText;
} |
et voici le type de liens utilsé :
Code:
1 2
|
<a href="#Home/page/" onclick="getdata('pages/page.php','contenu');"></a> |
Et donne donc un url de type http://monsite.fr/#Home/page/ .
Mon but est donc de pouvoir "marquer" les pages dans l'url et de pouvoir rafraichir, revenir à une page dynamique.
Merci pour vos futurs aident.