インラインハンドラーでイベントをインターセプトし、伝播を停止することにより、クリックハンドラーをオーバーライドしようとしています (ここから取得した伝播を無効にするコード)。
次のコードは、伝播を停止しないだけでなく、インライン ハンドラを起動することさえしません。何が悪いのかわかりません。
フィドル: http://jsfiddle.net/trKN4/3/
HTML:
<a onclick='stopIt(event);'>do it</a>
JS:
function disableEventPropagation(event)
{
if (event.stopPropagation){
event.stopPropagation();
}
else if(window.event){
window.event.cancelBubble=true;
}
}
function stopIt(event) {
disableEventPropagation(event);
alert('dont do it');
}
$(function() {
$('a').click(function(e){
alert('im doing it');
});
});