さて、私はついにこれを理解しました。
問題は、イベントの処理方法にありました。以下に示すように、イベントオブジェクト自体は、それぞれのハンドラー関数によって処理されるだけではありません。また、ハンドラーで行われたAJAX呼び出しが正常に返された場合にのみ呼び出される別の関数によって処理される予定でした。ただし、成功関数がAJAX呼び出しで実行されると、イベントオブジェクトはそのコンテキストの一部、つまりcurrentTargetプロパティを失います。これは、ブラウザーがsuccess関数内でコードの実行を開始すると、ハンドラーのスコープ内に直接いないためだと思います。
$('#element').click(function(e) {
// bunch of lines of code here
$.ajax({
type: 'POST',
url: // url,
...,
success: function(response) {
// more lines of code here
callAnotherFunction(e);
// When we invoke the above function, we pass the event in as a
// parameter, but the event has already lost some of its context
// due to scope change.
}
});
})