Pas mal, le menu, non ? Bon, j'avoue, c'est un peu un aide-mémoire pour moi.

getElementsByClass

Le DOM ne fournit aucune méthode pour récupérer facilement des éléments à partir de leur classe. Personnellement, je me sers toujours des propositions de Daniel Glazman. A noter qu'il évoque aussi une manière plus rapide, mais qui ne marche pas partout.

J'ai lu que Prototype a récemment intégré cette deuxième proposition si le navigateur la supporte, car elle est bien plus rapide.

Il y a aussi cssQuery par Dean Edwards que je n'ai pas encore essayée... et prototype semble aussi avoir cette fonctionnalité.

L'objet Node dans Internet Explorer

Internet Explorer n'a pas l'objet Node, utilisé dans l'une des propositions de Daniel Glazman pour getElementsByClass. Trouvé sur le site d'IBM:

if (!window['Node']) {
    window.Node = new Object();
    Node.ELEMENT_NODE = 1;
    Node.ATTRIBUTE_NODE = 2;
    Node.TEXT_NODE = 3;
    Node.CDATA_SECTION_NODE = 4;
    Node.ENTITY_REFERENCE_NODE = 5;
    Node.ENTITY_NODE = 6;
    Node.PROCESSING_INSTRUCTION_NODE = 7;
    Node.COMMENT_NODE = 8;
    Node.DOCUMENT_NODE = 9;
    Node.DOCUMENT_TYPE_NODE = 10;
    Node.DOCUMENT_FRAGMENT_NODE = 11;
    Node.NOTATION_NODE = 12;
}

Récupérer les dimensions de la fenêtre du navigateur

Cette fois, c'est l'excellent quirksmode qui détient la solution, avec l'explication chez Evolt.

Manipuler la position d'un bloc

Là j'ai galéré.

Il faut savoir, tout d'abord, que la propriété style d'un bloc n'est mise à jour qu'avec des styles de type inline. Ainsi, impossible de récupérer les styles mis dans une feuille de style CSS (externe ou inclue dans le document) de cette manière. Exit donc la méthode consistant à partir de element.style.top directement, puisque cette propriété n'est initialement pas définie.

L'idée est donc de partir plutot de element.offsetTop.

Des bibliothèques qui font tout toutes seules ?

Deux bibliothèques (en plus de Prototype déjà cité) m'ont intéressé dans ma recherche.

La première est Yahoo! UI Library (YUI), notamment sa partie concernant le DOM; en effet, elle a tout ce que je cherchais: getElementsByClassName, getViewportWidth et getViewportHeight, setXY. Et sa partie Animation permet notamment de déplacer de manière fluide un élément.

Une seconde est moo.fx, avec son accordéon qui accepte le focus, ses animations qui déchirent (voir les wicked demos sur le wiki).

Un coloriseur de syntaxe en JavaScript

Utilisé sur le site de la bibliothèque Yahoo! UI, ce coloriseur de syntaxe a l'air d'être vraiment très bien... A suivre de près.

Du Javascript plus rapide dans IE

Et je suis tombé aussi sur des infos pour faire du Javascript plus rapide pour Internet Explorer. Mais qui s'en soucie encore ?

Intégrer du Flash de manière standard dans une page Web

L'une des méthodes préconisées aujourd'hui est celle dite des objets imbriqués.

D'autres billets et articles sur le sujet:

The End

Vos réflexions ?