对我来说,iframe是纯粹的邪恶(好吧,也许不是那么纯粹).他们似乎遇到了很多麻烦.是的,您的整个网站将加载一次,然后您只需加载一个页面.但人们为此目的发明了AJAX.
我发现的最大问题之一iframe是我无法将链接粘贴到其中一个子页面,因为URL从未更改(是的,我知道有一个解决方法).其次,网络搜索引擎可能有问题正确索引网站.
有时这些网站的可访问性更差,有些浏览器甚至可以不正确地显示它们.
有更好的方法来设计没有(i)帧的布局.每天我都可以看到有人问过SO问题,比如"如何使用jQuery访问iframe?".
那么iframe的好处是什么?还有什么理由继续使用它们?我只是想知道为什么:)
(因为它不是一个真正的问题,它是一个CW)
Dan*_*eam 98
我可以想到两个原因(目前)为什么人们仍会使用iframe代替AJAX:
1)iframe绕过跨域原始策略(图像,脚本和样式不).这对于相对安全地从其他域名中提取站点/内容非常有用.基本上,这允许能够直观地显示来自其他域的数据,而不会让他们无限制地访问整个页面(就像JSONP能够做的那样).
2)你可以从iframe中加载多种类型的资源,而不仅仅是某些mime类型(你相对局限于应用程序/ javascript,application/x-javascript,text/css,text/xml,image/png,image/jpeg,带脚本的图像/ gif,XHR,图像和源代码).例如,如果我想向您显示PDF,我可以打开一个iframe,然后让Adobe Reader插件显示该文件.另外,在同一个域中,如果我想将脚本,样式和图像一起管道化(在页面上内嵌,图像必须是数据URI),我可以使用iframe完成此操作(如果它在同一个域中)域,端口和协议我也可以使用JavaScript访问它.
你知道Gmail是一组iframe吗?可见部分只是巧妙的定位.此外,许多OAuth实施(Twitter,Facebook,Google,Yahoo!)通常使用iframe将其域上的用户与成功的身份验证URL相关联(在用户登录后).
ger*_*tas 20
IFRAME用于将第三方内容嵌入并隔离到网站中.
大多数网络广告解决方案都基于iframe - 因为它们在屏幕上提供安全性(跨域策略)和隔离矩形,可以通过第三方内容和脚本完全管理(常见的用例是广告).
IFRAMES的另一个现代用途是对AJAX应用程序的历史管理(常见的后退按钮解决方法).
FRAME是IFRAMES的糟糕版本.他们的使用正在下降.
| 归档时间: |
|
| 查看次数: |
77235 次 |
| 最近记录: |