これに似た Javascript オブジェクトがあります。
var MyClass;
MyClass = (function() {
// private
var $elems;
// constructor
function MyClass(selector) {
$elems = $(selector);
$elems.change(myEventHandler(e));
}
// event handler
function myEventHandler(e) {
var isSelected = ($(e.target).attr('checked') == 'checked');
if (isSelected) {
alert('You selected me');
}
}
return MyClass;
})();
このクラスを html ドキュメントで次のように呼び出します。
$(function(){
var myClass;
myClass = new MyClass(".MySelector");
});
エラーが表示されます:
Uncaught ReferenceError: e is not defined MyClassJsFile.js:17
MyClass MyClassJsFile.js:17
(anonymous function) Step3:36
f.extend._Deferred.e.resolveWith jquery.min.js:16
e.extend.ready jquery.min.js:16
c.addEventListener.B
コンストラクターの次の行で、イベント オブジェクトをイベント ハンドラーに渡していると思いました。
$elems.change(myEventHandler(e));
この場合、イベントを正しく渡すにはどうすればよいですか?