为什么AJAX超过iFrames?

时间:2012-05-18 17:16:38

标签: html ajax post iframe

我是一个相对较新的程序员,与他告诉我的合作伙伴交谈,在AJAX之前,他使用iframe发送数据并更改内容(显然是借助JavaScript)。

我知道两者都是类似的技术,但我没有找到描述其特征的文章,

AJAX优于Iframe的优点是什么?

修改  我没有找到任何关于这项技术的解释,但是我的搭档告诉我他通过隐藏的iframe发布数据并提交iframe,声音就像iframe必须刷新一样,但我从来没有这样做

5 个答案:

答案 0 :(得分:8)

  1. AJAX的一个优点是能够读取状态/状态 请求。您还可以访问页面标题,但不能使用 内部框架。
  2. Ajax可以处理多个异步请求。这有点棘手 使用iframe,因为您需要为每个请求创建一个Iframe(并保留 跟踪所有这些以后删除它们而不是回收 同一个。
  3. 现有的库充满了AJAX的优点,并且有更大的社区支持基础。

答案 1 :(得分:7)

iframe

是一种在一个

中显示单独两个(或更多)网页的方式
 ajax

合并两种(或更多)网页(或新数据)进入一种

的方法

我发现的Ajax的主要优点是;

  • CSS将流向调用它的页面。
  • 一种在不刷新页面的情况下检索数据并向访问者更新新信息的方法。

提到本网站,因为它巧妙地使用了Ajax。

A'Google即时'和暗示搜索是通过Ajax实现的

答案 2 :(得分:3)

只是我的两分钱:

我同意克里斯的观点,我不会说它们具有可比性。

在用例上我发现iFrames更易于使用AJAX,即如果您需要将复杂的表单提交到另一个页面,但您不需要任何响应 - iframe路由是最简单的代码。

除此之外,使用隐喻的AJAX扮演了一个知识渊博的中间人。它将处理多个请求,这些请求的状态,并以您需要的格式回传数据。

答案 3 :(得分:2)

根据我的经验,通过AJAX加载的数据比iFrame中的数据更容易操作。此外,AJAX非常适合创建更好的用户体验。但是我不确定我是否必须将iFrames和AJAX放在同一类别中,因为AJAX是异步内容而iFrame实际上只是从您网站外部加载的另一个页面。

此外,我可以看到iFraming创建SEO障碍并创建糟糕的用户体验。老实说,如果我有权访问内容,我更喜欢AJAX。

答案 4 :(得分:2)

我只想添加这个,因为我没有在任何答案中看到。

使用Ajax的原因主要是控制,你会得到很多。上面提到了这些原因。

但是,Ajax的一个严重缺点是它是一个JS修复程序。 JavaScript是一种很好的语言,但人们已经把它放在每个问题上一段时间了,而且如果它们内置在浏览器中就可以优化的东西,现在用JS来缓慢地(与编译语言相比)。

iFrames就是一个很好的例子。它们代表了一个非常常见的用例,希望在其他一些html中包含一些html。不幸的是,它们并不令人惊讶,经常造成比其他任何事情更令人头疼的问题。

如果你想要包含一些东西,而不是让它弄乱你的网站,也不要让你的网站弄乱它,iFrame就很棒。对于在其他一些html中包含一些随机html的更常见的用例,Ajax更好。

这就是我想要做的一点:这是愚蠢的。没有理由不像iFrame那样更像Ajax。但是,通过与Ajax一起跳跃(就像我们所有人一样),我们现在别无选择。

这是一个问题的最大原因是JS从未打算成为互联网的绝对构建块。此外,几乎每个网站都使用它来侵犯用户隐私。因此,如果您正在寻找使用iFrame的充分理由,那么这就是我的:

不需要JS感觉很好。如果您可以通过JS而不是依赖使您的网站改进,那么这是一项难以获得的成就,并且该网站会感觉更少" hacky&# 34;总体。

无论如何,这只是我的意见。