Page 1 sur 1

Behaviour: Using CSS selectors to apply Javascript behaviour

Posté : 13 févr. 2006, 14:16
par Hubert Roksor
Je n'écris qu'assez rarement du Javascript --ou même du CSS-- mais récemment j'ai dû en faire un tout petit peu pour mes besoins personnels, et durant mes recherches je suis tombé sur ça: Behaviour : Using CSS selectors to apply Javascript behaviours

Je ne sais pas si pour vous c'est déjà old news, mais si comme moi vous ne connaissiez pas alors je suis sûr que vous adorerez :D

Pour résumer, Behaviour se propose de remplacer ces vilains bouts de javascript qui semble rentrés de force dans nos jolis tags HTML (comme une valise pleine qu'on arrive plus à fermer) par de simples attributs de classe ou ID. Un exemple, consistant à créer un lien s'ouvrant dans une nouvelle fenêtre:
Someone open a window

<a href="javascript:window.open('page.html')">my page</a>
Awful!

<a href="#" onclick="window.open('page.html')">my page</a>
Bad!

<a href="page.html" onclick="window.open(this.href)">my page</a>
Better

<a href="page.html" class="popup">my page</a>
Best!

Code : Tout sélectionner

function doPopups() { if (!document.getElementsByTagName) return false; var links = document.getElementsByTagName("a"); for (var i=0; i < links.length; i++) { if (links[i].className.match("popup")) { links[i].onclick = function() { window.open(this.href); return false; } } } } window.onload = doPopups;
Edit: corrigé le titre trop long

Posté : 13 févr. 2006, 14:31
par fab
simpa =)

Posté : 13 févr. 2006, 21:39
par naholyr
J'avais développé un peu autour de ce principe il y a quelques mois. J'en avais parlé sur le forum privé, voici le topic déplacé sur le forum JS :
http://www.phpfrance.com/forums/voir_sujet-6999.php

Vous verrez combien certains concepts sont difficiles à faire entrer dans l'esprit de gens pourtant au fait des standards :langue:
Vous y verrez également combien j'ai tendance à commencer un truc pour ne jamais le finir :evil: :evil: :evil: :evil:

Posté : 13 févr. 2006, 22:22
par Hubert Roksor
Sur le... forum privé ?

Posté : 14 févr. 2006, 00:14
par naholyr
Sur le... forum privé ?
ça n'est pas l'objet du topic :langue: c'était juste pour préciser que ce thread ne sortait pas de nulle part d'un coup comme ça ;)