【问题标题】:In IE8 JQuery.isFunction does not report document.write to be a function在 IE8 中 JQuery.isFunction 不报告 document.write 是一个函数
【发布时间】:2012-11-01 11:53:54
【问题描述】:

我在 IE8 中尝试了 jQuery.isFunction(document.write),它返回 false。

这些是我注意到的一些事情。 1. document.write.constructor 是未定义 2. typeof document.write 是 object

我在使用 Sinon 在 document.write 上创建存根时发现了这个问题,它抛出了一个异常,提示 Attempted to wrap object property write as function

虽然,我可以通过绕过对 document.write 的检查来解决这个问题,但我只是想知道它是 JQuery 中的错误还是故意的(尽管看起来不是)。

此外,我检查了 JQuery 代码及其简单检查 $.call(a) === "[object Function]" 在 IE8(很可能是其他版本)的情况下失败。

还有一件事,为什么我们不能只检查document.write的call函数是否定义和原生?这应该足够了吗?

【问题讨论】:

    标签: jquery internet-explorer sinon


    【解决方案1】:
    1. 看看here,这个问题在msdn论坛上讨论过。

    2. 这里是why-dhtml-behavior-not-work-in-ie8-if-document-write-is-executed-in-head

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多