1

我在我的 HTML5 页面上模拟模态窗口功能,方法是创建一个 div position: fixed,以浏览器窗口为中心等。在某些情况下,我的模态窗口只显示带有一个或多个按钮的消息,例如OK Cancel,但在其他情况下,我是显示更复杂的表格,例如即时消息对话框。

问题是针对更复杂的情况。那么哪个更好,(1)<iframe>在我的“模态”窗口中有一个或(2)<div>加上一些Ajax代码来检索我的表单内容并将其注入到div的innerHTML中?

在这两种情况下有哪些注意事项?当您选择其中之一时,您的理由是什么?

浏览器要求:IE9+ 和其他健全的浏览器。

4

1 回答 1

7

iframe仅当您确实需要时才应使用iframe. 使用 iframe 的原因是:

  1. 从另一个域加载内容的最简单方法。
  2. 将内容的安全上下文与单独的域隔离。
  3. 在您的网页中嵌入一个完全独立的网页(独立的脚本、独立的样式表等)。
  4. 您不想编写 ajax 代码来动态加载内容,而只想使用.srciframe 的内置功能。

如果您不需要 iframe 的任何这些功能,那么通常更容易使用 div(它会自动调整其内容的大小 - 而 iframe 不会)并将所需的内容放入该 div 中。

任何一个都可以工作。

于 2012-09-23T16:11:52.540 回答