【问题标题】:Chrome Extension Javascript/jQuery load page and check if changedChrome 扩展 Javascript/jQuery 加载页面并检查是否更改
【发布时间】:2013-06-24 15:51:45
【问题描述】:

我正在寻找一种加载网站的方法,然后在 1 分钟左右后检查内容是否已更改,如果没有,请重复。这是因为我试图从中获取内容的网站包含用于加载我需要的 div 的 javascript。我想过使用某种 iFrame,但我不知道从哪里开始,而且 Google 也没有帮助我。

编辑

这是我用 atm 运行的代码,scrapUrl 是一个已定义的 url,所以不用担心:

var iframe = document.body.appendChild(document.createElement('iframe'));
iframe.src = scrapUrl;
$(iframe).ready(function() {
    $(iframe).load(function() {
        alert('loaded');
        alert($(iframe).contents().find('div#description').html());
    });
});

它输出“已加载”,然后输出“未定义”

【问题讨论】:

  • 所以您想要一个经常重新加载的 iFrame?你找不到那个on Google?这个问题呢:stackoverflow.com/questions/6975765/…
  • 使用javascript setinterval()方法
  • 它是一个 iFrame 对象,而不是页面上的实际 iFrame。

标签: javascript jquery google-chrome iframe google-chrome-extension


【解决方案1】:

所以您在 div 中进行内容的延迟加载,并且您想知道该 div 何时加载?根据您的操作方式,您最好设置一个标志并对与该延迟加载相关的 AJAX“加载”事件做出反应。

如果你必须按照你建议的方式做,试试这个:

  1. 创建一个间隔 (setInterval) 来检查负载状态或 div 的内容
  2. 如果为假,则什么也不做。如果为真,则清除间隔。

【讨论】:

  • 不,我实际上正在开发 Chrome 扩展程序。我正在加载的页面有一个在一段时间后出现的链接,该链接总是不同的。我需要从该页面获取该链接,当我使用 AJAX 获取它时,该链接将未定义,因为页面上的 javascript 尚未完成显示该链接。我已经添加了我有 atm 的代码。
  • 哦,我明白了。我不熟悉这个地区。通常,您会等待 onload 或 ready,但如果内容是动态进入的,那么这些内容可能不符合您的要求。不过我相信你知道 :)
  • 我还没有找到问题的答案。
猜你喜欢
  • 2021-10-05
  • 1970-01-01
  • 2014-06-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-13
  • 1970-01-01
相关资源
最近更新 更多