Au lieu de définir un gestionnaire onclick pour chaque lien dans la page, pour une meilleure performance, vous pouvez utiliser la délégation d'événements sur le conteneur de liens (cette technique correspond parfaitement à votre tâche), par exemple
(function() {
var divcnt = document.getElementById('linkcnt');
divcnt.onclick = function(evt) {
var event = (evt || window.event),
target = (event.target || event.srcElement);
if (evt.target.tagName === 'A') {
// event.target is DOM reference to link you clicked
// evt.target.id is the ID;
alert(evt.target.id);
//callmyfunction(event.target) // Call a function with DOM reference
}
}
})();
Voir un exemple de travail ici: http://jsfiddle.net/fcalderan/MSvvh/
il vaut mieux avoir ce code dans l'événement onload du document , de sorte que toutes les étiquettes d'ancrage seront là à coup sûr. corrigeant aussi les fautes mineures, cela devrait être: if (ancres [i] .className == "quelque chose") {:-) –
@Shadow Wizard - merci, j'ai corrigé la faute de frappe. – karim79
acclamations, mon plaisir .. au fait, il ne sera pas plus efficace d'utiliser la même fonction? –