相关疑难解决方法(0)

类方法作为JavaScript中的事件处理程序?

JavaScript中是否有最佳实践或常用方法将类成员作为事件处理程序?

考虑以下简单示例:

<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>
Run Code Online (Sandbox Code Playgroud)

事件处理程序buttonClicked被调用,但_clickCount成员不可访问,或指出了一些其他对象.

关于这类问题的任何好的提示/文章/资源?

html javascript class function

21
推荐指数
4
解决办法
2万
查看次数

标签 统计

class ×1

function ×1

html ×1

javascript ×1