2012-03-22 40 views
2

当创建一个打开“假弹窗”(类似于亚马逊的愿望清单,pinterest等)的书签时,为什么人们不使用iframe而不是生成所有元素并从中删除所有页面样式?至于我可以告诉大家:bookmarklet弹出:通过JS或iframe生成div?

的iframe优点:

  • 可以使用浏览器机制记住密码等
  • 没有第三方cookie的问题
  • 表单提交简单得多
  • 少得多javascript,可能会被页面上的脚本等破坏

iframe缺点:

  • 不能自动关闭弹出窗口(书签无法读取iframe中的内容)
  • 任何网页脚本必须的iframe之外运行,那么结果通过了通过GET参数(iframe中无法读取网页内容)
  • ???

在我看来,如果你不需要自动关闭的东西,iframe将是更好的选择。但似乎没有人这样做。为什么不?

+0

通过bookmarklet创建的iframe [无法读取](),父文档的DOM,这是罢工三。 – 2012-07-27 00:37:42

+0

脚本可以做解析,然后通过获取参数传递给iframe,不是吗? – Mala 2012-08-02 00:22:09

+0

是的,这是行得通的,但是iframe中的任何事件仍然对父文档没有影响。 – 2012-08-02 01:41:44

回答

0

这里的原因:

  • 通过书签,创建一个iFrame无法读取父文档

  • 的iframe内的任何事件仍然会对父文档没有任何影响的DOM