【问题标题】:Why javascript editors use iframe to implement?为什么javascript编辑器使用iframe来实现?
【发布时间】:2009-12-11 05:27:00
【问题描述】:

为什么他们更喜欢使用 iframe 并通过.contentWindow.document.designMode = "on" 开启设计模式而不是直接使用 textarea?

【问题讨论】:

    标签: javascript iframe editor textarea


    【解决方案1】:

    原因是您无法在文本区域中实时预览使用编辑器应用的样式。每当您应用诸如按Ctrl + B 之类的样式时,iframe 内的部分可以以粗体格式呈现字符,而在 textarea 中则不可能。 Textarea 用于输入非格式化值,而打开 iframe 的设计模式用于输入格式化文本。

    您可以使用任何其他元素,例如 div 并将其转换为编辑器。但是使用 iframe,您可以拥有一个单独的文档,并且可以在不考虑设置 iframe 的父页面的情况下对其进行操作。

    【讨论】:

      【解决方案2】:

      我认为使用 iframe 可以实现更好的隔离:编辑器几乎可以做任何想做的事情,而不会与页面的其余部分发生冲突——尤其是 CSS 和 Javascript。

      【讨论】:

        【解决方案3】:

        大多数浏览器都有某种可编辑模式已经有一段时间了,但直到最近一些浏览器(例如 Firefox 直到版本 3)才支持 designMode,它只适用于整个文档,而不是更灵活的 @ 987654322@,可以为文档中的单个元素打开和关闭。因此,所见即所得的编辑器不得不使用 iframe 来支持此类浏览器。

        【讨论】:

          猜你喜欢
          • 2011-01-06
          • 2011-07-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-03-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多