8

有什么理由为什么只有当流行的 JS 库中的窗口不在 iframe 中时才实现Diego Perini 的 IE DOMContentLoaded 技巧?

jQuery:

//If IE and not a frame continually check to see if the document is ready

  var toplevel = false;

  try {
    toplevel = window.frameElement == null;
  } catch(e) {}

  if ( document.documentElement.doScroll && toplevel ) {
    doScrollCheck();
  }

原型:

document.observe('readystatechange', checkReadyState);
if (window == top)
  timer = pollDoScroll.defer();

它们都检查窗口是否等于顶部,如果是document.documentElement.doScroll('left');则用于检查就绪状态。但是为什么不什么时候用window != top呢?

4

1 回答 1

5

YUI 库的此错误报告指出,框架文档中的 doScroll 与在顶层运行时的工作方式不同(当文档未准备好时不会引发错误)。

于 2012-05-29T15:16:03.963 回答