繁体   English   中英

仅将HTML加载到IFRAME中

[英]Only load HTML into an IFRAME

如何仅将页面的HTML加载到IFRAME中,而不会自动触发页面上所有CSS,脚本,图像,视频的下载?

或者,当DOM处于“就绪”状态时,当初始HTML已加载且仅此而已时,您可以获得事件吗?

没有跨浏览器的方法可以做到这一点。 某些浏览器提供了在加载DOM时触发的事件,例如DOMContentLoaded for Gecko。

jQuery实现了此功能 我建议您为此使用jQuery:

$(document).ready(function () {
  // Function is called when the DOM is loaded.
});

或检查jQuery如何实现它。 请参阅jQuery源代码中bindReady函数。

要仅获取HTML内容,请尝试使用AJAX调用。 当然,这将以变量的形式返回内容,但是您可以在以后认为合适的情况下对其进行处理。

简短的回答是“您不能”。

Internet Explorer支持一个propriatry属性,该属性可以阻止脚本执行,但它不是跨浏览器的,也不处理图像或样式表。

许多JS库实现了一个自定义事件, 事件在DOM准备就绪时触发-但浏览器会并行加载资源,因此尽管该事件可能在加载所有图像和样式表之前触发,但在其他元素开始下载之前不太可能触发。

如果您确实希望页面加载时没有这些内容,请在服务器上对其进行处理,以去除包含它们的HTML。

将该HTML页面的“内容类型”设置为文本/纯文本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM