使用 HTML5 替代 iFrame

新手上路,请多包涵

我想知道是否有替代 HTML5 的 iFrame 的方法。我的意思是,能够在不使用 iFrame 的情况下在网页中注入跨域 HTML。

原文由 stemlaur 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.1k
1 个回答

基本上有 4 种方法可以将 HTML 嵌入到网页中:

  • <iframe> iframe 的内容与您的页面完全不同。虽然这主要是一个很棒的功能,并且它是浏览器版本中最兼容的,但它带来了额外的挑战(将框架的大小缩小到其内容是很困难的,编写脚本输入/输出脚本非常令人沮丧,几乎不可能设置样式)。
  • 阿贾克斯。正如此处显示的解决方案所证明的,您可以使用 XMLHttpRequest 对象检索数据并将其注入您的页面。它并不理想,因为它依赖于脚本技术,因此执行起来更慢、更复杂,还有其他 缺点
  • 骇客。这个问题很少提到,也不是很可靠。
  • HTML5 网络组件。 HTML Imports 是 Web Components 的一部分,允许将 HTML 文档捆绑到其他 HTML 文档中。 That includes HTML , CSS , JavaScript or anything else an .html file can contain.这使其成为具有许多有趣用例的出色解决方案:将应用程序拆分为捆绑组件,您可以将其作为构建块分发,更好地管理依赖项以避免冗余,代码组织等。这是一个简单的示例:
 <!-- Resources on other origins must be CORS-enabled. -->

<link rel="import" href="http://example.com/elements.html">

机兼容性 仍然是一个问题,但您可以使用 polyfill 使其在今天的 常青浏览器 中工作。

您可以 在此处此处 了解更多信息。

原文由 Oriol 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏