非常に奇妙な問題があります。
Twitter Bootstrap 2を使用しています。ページにモーダルダイアログがあり、次のように開いています。
$('#rights-dialogue).modal();
Object.prototype
次のように、オブジェクトにカスタム関数も追加しています。
Object.prototype.foo = function (a) {};
モーダル ダイアログのx
ボタンをクリックすると、ダイアログは閉じますが、黒い背景が残り、jQuery イベント処理コードで奇妙な jQuery エラーが発生します。
Uncaught TypeError: Cannot read property 'origType' of undefined
関数からすべての引数を削除するfoo()
と、このエラーは発生せず、すべて正常に動作します。
この問題を説明する jsfiddle を次に示します: http://jsfiddle.net/nicholascloud/r6T8z/5/。
ここで何が起こっているのかわかりません。
編集:私が気づいた他のいくつかのこと。
Object.prototype でのメソッドの名前は問題ではないようです。引数を持つメソッドは、このエラーを引き起こします。引数なしでメソッドを追加すると、エラーは発生しません。
jQuerykeyup.dismiss.modal
が DOM からイベント リスナーをデタッチすると、エラーが発生します。
jQuery 1.7.1 および 1.7.2 でこのエラーを確認しましたが、これは Twitter Bootstrap の問題であり、jQuery 自体の問題ではないのではないかと考えています。