javascript - 一些所见即所得的编辑器如何保持粘贴文本的格式?

标签 javascript jquery browser wysiwyg dom-events

一些所见即所得的编辑器如何保持粘贴文本的格式?例如,我将斜体红色文本从文本编辑器复制到 WYSIWYG 中,它保留了文本的颜色和样式,这是怎么发生的?最长的时间我认为 JavaScript 只能访问剪贴板文本。不是这样吗?如果是,那么它是什么?

最佳答案

在复制/粘贴操作期间,源和目标之间存在内容类型协商。它的发生有点像这样:

  1. 你将一些东西复制到复制和粘贴缓冲区中。复制的数据或多或少带有 MIME 类型的标记,以及是谁放在那里的。
  2. 粘贴时,粘贴目标会告诉复制粘贴系统它理解特定的 MIME 类型列表。
  3. 复制粘贴系统将可用格式与所需格式进行匹配,并在两个列表中找到 text/html
  4. 某人(可能是数据的原始来源)然后将粘贴缓冲区转换为 text/html 并将其放入编辑器中。

这几乎就是我在进行 X11/Motif 开发时的工作方式(嘿!滚开我的草坪,你们这些烂 child !)所以我猜每个人都以几乎相同的方式进行。

关于javascript - 一些所见即所得的编辑器如何保持粘贴文本的格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4481556/

相关文章:

javascript - 如何格式化 setInterval 方法 JavaScript 的耗时

Javascript 警报与 Jquery 消息交替

javascript - 如果元素超出视口(viewport),则将类添加到元素

javascript - 删除 :focus/control generated error field 上的输入文本

css - 元素符号列表项总是缩进 1.8em 吗?

javascript - 浏览器呈现网页的顺序是什么?为什么脚本阻塞会成为问题?

javascript - Javascript 函数使用参数时出现的问题

javascript - Jquery 如何在单击列表项时选中单选按钮?

javascript - 如何在 switch 语句中执行特定情况下的多个代码块?

javascript - 布局引擎和javascript引擎的区别