一些所见即所得的编辑器如何保持粘贴文本的格式?例如,我将斜体红色文本从文本编辑器复制到 WYSIWYG 中,它保留了文本的颜色和样式,这是怎么发生的?最长的时间我认为 JavaScript 只能访问剪贴板文本。不是这样吗?如果是,那么它是什么?
最佳答案
在复制/粘贴操作期间,源和目标之间存在内容类型协商。它的发生有点像这样:
- 你将一些东西复制到复制和粘贴缓冲区中。复制的数据或多或少带有 MIME 类型的标记,以及是谁放在那里的。
- 粘贴时,粘贴目标会告诉复制粘贴系统它理解特定的 MIME 类型列表。
- 复制粘贴系统将可用格式与所需格式进行匹配,并在两个列表中找到
text/html
。 - 某人(可能是数据的原始来源)然后将粘贴缓冲区转换为
text/html
并将其放入编辑器中。
这几乎就是我在进行 X11/Motif 开发时的工作方式(嘿!滚开我的草坪,你们这些烂 child !)所以我猜每个人都以几乎相同的方式进行。
关于javascript - 一些所见即所得的编辑器如何保持粘贴文本的格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4481556/