par
Hubert Roksor » 13 févr. 2006, 14:16
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
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
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: [url=http://bennolan.com/behaviour/]Behaviour : Using CSS selectors to apply Javascript behaviours[/url]
Je ne sais pas si pour vous c'est déjà [i]old news[/i], 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:
[quote="[url=http://adactio.com/atmedia2005/]Jeremy Keith[/url]"]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]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;[/code][/quote]
Edit: corrigé le titre trop long