DOM - 一页上超过5个“窗口”对象

时间:2010-03-21 15:14:36

标签: javascript dom greasemonkey

我正在尝试使用Greasemonkey从我的某个网站中提取数据。问题是,该脚本运行了6次,因为显然该页面加载了来自6个不同服务器的内容。

因此,如果我输入alert ("Hey");代码运行6次,我会收到6个警报。

如何等待整个页面加载然后开始使用DOM。另外,我正在使用jQuery。

由于

1 个答案:

答案 0 :(得分:1)

  

问题是,该脚本运行了6次,因为显然该页面加载了来自6个不同服务器的内容。

您是说该网页是通过iFrame加载其他网页的?据我所知,这是你解释的唯一方法。所以如果这是真的,试试:

(function(){
  //ignore any window/iframe that is not the top window
  if(window.parent != window) return;

  // the main function
  var mainFunction = function(){
    alert("Hey");
  }

  if(document.readyState=="complete"){
    // for google chrome
    mainFunction();
  }
  else{
    // wait until the load event
    window.addEventListener("load", mainFunction, false);
  }
})();