[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).


