私はこのようなものを持っています
<div id="id">
<button name="one">One</button>
<button name="two">Two</button>
</div>
var testClass = {
initialise: function (a, b) {
jQuery('#id button').each( function(){
if (jQuery(this).name=='one'){
jQuery(this).click( function ( event ) {
//do something else
testClass.whenClicked ( data: {a:a, b:b }, target: this ); // how do I pass event into whenClicked here??
});
}else{
jQuery(this).click(data: {a:a, b:b }, testClass.whenClicked );
}
}
},
whenClicked: function (event){
event.preventDefault();
alert(event.data.a);
};
}
testClass.initialise('a','b');
"One" をクリックすると、既存のイベント ハンドラー関数を条件文内から呼び出してイベント オブジェクトを通過させ、event.preventDefault() が機能するようにするにはどうすればよいですか。
代わりに、 whenClicked 内のイベントがこれであるため、現在「オブジェクトには関数 eventDefault がありません」を取得しています。
ここにフィドルを設定しました:http://jsfiddle.net/5TbVK/1/