0

IE8でjQuery.isFunction(document.write)を試しましたが、 falseが返されました。

これらは私が気づいたいくつかのことです。1.document.write.constructorは未定義 です2.typeofdocument.writeオブジェクトです

Sinonを使用してdocument.writeにスタブを作成するときにこの問題を知りました。これは、オブジェクトプロパティの書き込みを関数としてラップしようとしたという例外をスローしました。

特にdocument.writeのチェックをバイパスすることで、この問題を回避できますが、JQueryのバグなのか、意図的なものなのかを知りたかっただけです(そうではないようですが)。

また、JQueryコードとその簡単なチェック$ .call(a)=== "[object Function]"をチェックしましたが、IE8(おそらく他のバージョン)の場合は失敗します。

もう1つ、document.writeの呼び出し関数が定義されてネイティブであるかどうかを確認できないのはなぜですか?これで十分かどうか?

4

1 に答える 1

0
  1. こちらをご覧ください。この質問は msdn フォーラムで議論されました。

  2. そしてここでWhy-dhtml-behavior-not-work-in-ie8-if-document-write-is-executed-in-head

于 2012-11-01T12:02:42.453 に答える