IE を除くすべてのブラウザーで完全に正常に動作するclearTimeout関数をオーバーライドしようとしています(IE8 でテスト済み)。
clearTimeout = function(){};
IE8 では次のエラーが発生します。
Object doesn't support this action
しかし、私がそうするとき、
window.clearTimeout = function(){};
clearTimeout をオーバーライドすると、完全に正常に動作します。この動作はなぜですか?
また、コードのどこでも、window.clearTimeoutとしてではなく、 clearTimeoutを直接呼び出しています。したがって、(2 番目の方法で) clearTimeout をオーバーライドしても、オーバーライドされた clearTimeout ではなく、ネイティブの clearTimeout が呼び出されます。これに対する回避策は何ですか?