gpt4 book ai didi

iframe - 为什么人们仍然使用 iframe?

转载 作者:行者123 更新时间:2023-12-03 05:09:38 26 4
gpt4 key购买 nike

对我来说,iframe 是纯粹的邪恶(好吧,也许不那么纯粹)。他们似乎制造了很多麻烦。是的,您的整个网站将加载一次,然后您可以只加载单个页面。但人们为此目的发明了 AJAX。

我发现 iframe 的最大问题之一问题是我无法将链接粘贴到其中一个子页面,因为 URL 从未更改过(是的,我知道有一个解决方法)。其次,网络搜索引擎可能在索引此类页面时出现问题。

有时该网站的可访问性较差,某些浏览器甚至无法正确显示。

有更好的方法可以在没有 iframe 的情况下设计布局。每天我都能看到有人问这样的问题,比如“如何使用 jQuery 访问 iframe?”。

那么 iframe 有什么好处呢?仍然使用它们的理由是什么?我只是想知道为什么。

最佳答案

我可以想到(目前)人们仍然使用 iframe 而不是 AJAX 的两个原因:

  1. iframe 规避跨域来源策略(图像、脚本和样式则不然)。这对于相对安全地从其他域名提取站点/内容非常有用。基本上,这具有以下优点:能够直观地显示来自其他域的数据,而不会让它们以无限制的访问方式在您的页面上肆虐(就像 JSONP 可以做到的那样)。

  2. 您可以从 iframe 中加载多种类型的资源,而不仅仅是某些 mime 类型(您相对限于 application/javascript、application/x-javascript、text/css、text/xml、image/png、image/jpeg、带脚本的 image/gif、XHR、图像和源)。例如,如果我想向您显示 PDF,我可以打开一个 iframe 并让 Adob​​e Reader 插件向您显示该文件。此外,在同一个域中,如果我想将脚本、样式和图像全部通过管道传输(页面上内联,图像必须是数据 URI),我可以使用 iframe 来完成此操作(如果它位于同一个域中)域、端口和协议(protocol)(我也可以使用 JavaScript 访问它)。

您知道 Gmail 是一组 iframe 吗?可见的部分只是巧妙的定位。此外,许多 OAuth 实现(Twitter、Facebook、Google、Yahoo!)通常使用 iframe 将其域中的用户与成功的身份验证 URL 相关联(在用户登录后)。

关于iframe - 为什么人们仍然使用 iframe?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3797179/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com