Les méthodes de la classe que les gestionnaires d'événements en JavaScript?

Est-il une bonne pratique ou de façon courante en JavaScript pour avoir des membres de la classe des gestionnaires d'événement?

Considérons l'exemple simple suivant:

<head>
    <script language="javascript" type="text/javascript">

        ClickCounter = function(buttonId) {
            this._clickCount = 0;
            document.getElementById(buttonId).onclick = this.buttonClicked;
        }

        ClickCounter.prototype = {
            buttonClicked: function() {
                this._clickCount++;
                alert('the button was clicked ' + this._clickCount + ' times');
            }
        }

    </script>
</head>
<body>
    <input type="button" id="btn1" value="Click me" />
    <script language="javascript" type="text/javascript">
        var btn1counter = new ClickCounter('btn1');
    </script>
</body>

Le gestionnaire d'événement buttoncliked est appelée, mais les _clickCount membre est inaccessible, ou ce points à un autre objet.

Des bons conseils/articles/ressources au sujet de ce genre de problèmes?

InformationsquelleAutor JacobE | 2008-10-23