[Javascript] XMLHttpRequest & optimisation

Fermé
Thireus - 7 avril 2007 à 10:14
 Thireus - 9 avril 2007 à 22:54
Bonjour,

J'ai un petit souci avec mon code, j'ai des modules qui se chargent indépendamment sur mon site (http://www.dareyourmind.com/ et le problème est que lorsque la page se charge pour la première fois l'affichage est quasi instantané. Mais lorsque l'on navigue les modules sont de plus en plus long à charger.

Au début je pensais que c'était dû à une mauvaise gestion du cache et j'avoue que je ne sais pas comment résoudre ce problème. Mais j'ai pensé aussi qu'il était possible que les requêtes ne s'arrêtent pas et continuent à s'effectuer même si l'on change de page (je ne sais pas si c'est possible).

Toujours est-il que le site est rapide lors de la première visite mais devient très vite agaçant.

Je vous fais parvenir le code :


function request02(id, url, post) {
var XhrObj = null;

if(window.XMLHttpRequest) // Firefox
XhrObj = new XMLHttpRequest();
// Évite un bug du navigateur Safari :
if (window.overrideMimeType) {
window.overrideMimeType("text/xml");
}
else if(window.ActiveXObject) // Internet Explorer
XhrObj = new ActiveXObject("Microsoft.XMLHTTP");
else { // XMLHttpRequest non supporté par le navigateur
return alert("Please use Firefox or Internet Explorer to browse this website!");
}

if(post){
var method = "POST";
}else{
var method = "GET";
}

XhrObj.open(method, url, true);

XhrObj.onreadystatechange = function()
{
if (XhrObj.readyState == 4)
document.getElementById(id).innerHTML = XhrObj.responseText ;
}

if(method == "POST") {
XhrObj.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=iso-8859-1');
XhrObj.send(post);
}else{
XhrObj.send(null);
}

}




Merci d'avance pour votre aide.
A voir également:

1 réponse

Utilisateur anonyme
9 avril 2007 à 14:37
Salut!

Ou définis-tu la valeur des variables 'url' et 'post' que tu utilises lors de l'envoi de ton XMLHttpRequest?

;-)
HackTrack
0
Salut :)

Sur l'index et d'autres pages, juste avant le </body> :

<!!!ICI est le script grace à un PHP include, et après il y a :!!!>
<script language="JavaScript" type="text/javascript" src="Scripts/wz_tooltip.js"></script>
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-1371816-1";
urchinTracker();
</script>
</body>
</html>

Voici ce qu'il y a dans la page PHP include :

<script language="javascript">
listepost = new Array("despagespourrequettepost");

for(i = 0 ; i < listepost.length ; i++) {
if (document.getElementById(listepost[i])) {
request02(listepost[i]+'_include_httprequest', listepost[i]+'.php?<?=$getvariables?>', '<?=$postvariables?>');
}
}

listeget = new Array("despagespourrequetteget");

for(i = 0 ; i < listeget.length ; i++) {
if (document.getElementById(listeget[i])) {
request02(listeget[i]+'_include_httprequest', listeget[i]+'.php?<?=$getvariables?>');
}
}
</script>
0