onClick ne fonctionne pas correctement sur la balise p

Je veux lier un événement click à chaque <p> mais il ne semble pas fonctionner correctement.

Quand je lance le script je obtenir instantanément des trois alertes. Je ne veux que vous obtenez lorsque vous cliquez sur l'un des trois <p>'s.

Quelqu'un peut me dire ce que je fais mal?

Edit: Sry c'est à quoi il ressemble.
Le HTML est juste comme il se doit: <p class="special">text text text</p> etc

(function () {
    var myFunction = function (theP) {
            alert(theP.id)          
        }


    window.onload = function () {           
        var pTags = document.getElementsByTagName('p'),
            pLength = pTags.length,
            i;

        for (i = 0; i < pLength; i += 1) {
            if(pTags[i].className == 'special'){

                pTags[i].onClick = myFunction(pTags[i]);

            }
        };
    }
})();

Ps. Je ne peux pas utiliser jQuery atm

  • Peut-on voir un extrait de ton code html? Vous n'avez pas imbriquées les balises p et toi?
  • Une fois que vous résoudre la question de la fonction mentionnée par scraimer, ce code ne pas fonctionner dans tous les navigateurs. Envisager la liaison avec l'approche présentée dans le quirksmode.org/js/eventSimple.html.
  • Alan, j'ai édité mon post voir ^
InformationsquelleAutor patad | 2009-11-24