1

IE7 で.callFunction プロトタイプ メソッドを呼び出そうとしました。document.attachEventしかし、それは未定義として表示されています。も確認しましたがtypeof document.attachEvent、 と表示されるはずですfunctionが、 ですobject。誰かが理由を説明できますか?

document.attachEvent.call(this, 'onclick', function () {});

このエラーの取得

Error: Object doesn't support this property or method
4

1 に答える 1

1

ホスト提供の関数は、呼び出すことができる限り、適切な JavaScript 関数である必要はありません。つまり、これらは から継承する必要がなくFunction.prototype(したがってから派生したcallorapplyを持たない可能性がありますFunction.prototype)、typeofそれらを関数として識別できない可能性があります (JavaScript の観点からは、それらは呼び出し可能ですが、関数ではないため)。

IE7 を含め、すべての廃止されたブラウザーが関数を適切な関数にしたわけではありません。

于 2016-12-07T13:35:30.227 に答える