【问题标题】:Howto get iframe linking to internal document source using javascript/jQuery?如何使用 javascript/jQuery 获取 iframe 链接到内部文档源?
【发布时间】:2009-05-29 08:03:30
【问题描述】:

我有一个 ID 为“appframe”的 iframe,来源是 page.html,它位于同一台服务器上。我想使用 jQuery 获取页面的源代码。

alert($("#appframe").contents().find("html").html());

返回<head></head><body></body>,即使文档不包含这些标签,它只包含“默认页面”,所以这正是它应该返回的内容。知道如何使用 jQuery 获取整个文档的正确源脚本吗?

例如。如果文档将是“测试”,那么这正是它应该返回的内容。

请注意:几周前我确实问过这个问题。不幸的是,我没有得到解决的答案。由于我的声誉较低(~85),我不能请求赏金......这对我来说没有多大意义。无论如何,它迫使我重新发布这个问题。

【问题讨论】:

标签: javascript jquery frame


【解决方案1】:

$("#appframe").contents().find("html").html() 的调用检索应该在<html></html> 标记内的内容。

在 IFRAME 的情况下,如果它还没有完成加载,它会返回空白的 <head></head></body></body>,否则它应该存在。

如果您在 $(document).ready() 内部进行调用,则 IFRAME 可能尚未完成加载。尝试从按钮单击事件内部进行调用。

请记住,如果您的 IFRAME 包含纯文本并且您尝试获取其 html(),它将包含上述空白的 head 和 body 标记,即使它们不存在。

如果您不需要访问 IFRAME 中的所有 HTML,则应调用 ("body").html() 来获取内容。尝试从按钮点击事件中调用它:

alert($("#appframe").contents().find("body").html());

【讨论】:

    猜你喜欢
    • 2014-01-15
    • 2014-09-09
    • 2013-01-20
    • 2011-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-14
    • 1970-01-01
    相关资源
    最近更新 更多