Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

> Parcourir les entrées

> Proposer une entrée

[Administration] Optimisation du javascript

Soumis par Bruno Michel (Jabber id, page perso, ) le 12 avril 2007. Fermé par Benoît Sibaud (Jabber id, page perso, ) le 29 avril 2007. 0 vote(s). Voter pour cette tâche
La fonction getElementsByClass prend beaucoup de temps sur les pages avec beaucoup de nouveaux commentaires. Il est possible de l'optimiser sur certains navigateurs (comme firefox) en utilisant une requête XPath. Voici le patch :
--- linuxfr-snapshot/template/js/admin.js.orig	2007-04-11 23:37:35.000000000 +0200
+++ linuxfr-snapshot/template/js/admin.js	2007-04-12 23:20:49.000000000 +0200
@@ -171,6 +171,18 @@
 	DOCUMENT_FRAGMENT_NODE: 11
 	}
 }
+if (document.evaluate) {
+function getElementsByClass(seed, needle)
+{
+	var results = [];
+	var query = document.evaluate('.//*[@class = "' + needle + '"]', seed,
+			null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
+	for (var i = 0, length = query.snapshotLength; i < length; i++)
+		results.push(query.snapshotItem(i));
+	return results;
+}
+
+} else {
 // version originale par daniel glazman - www.glazman.org
 function getElementsByClass(seed, needle)
 {
@@ -197,6 +209,7 @@
 	_GetElementsByClass(outArray, seed, needle);
 	return (outArray);
 }
+}
 
 function loadContent(file){
 	var head = document.getElementsByTagName('head').item(0)

> Lire l'entrée (0 commentaire).  

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.

Revenir en haut de page