Javascript 所见即所得的逻辑
Javascript WYSIWYG Logic
本文关键字:所见即所得 Javascript 更新时间:2023-09-26
我已经在SO中搜索了类似的问题,但似乎它们都包含在使用contenteditable="true"
使div可编辑中。
我很好奇跟踪添加到文档的所有格式标签的最有效方法。 由于重叠标签损坏,仅使用 jQuery 包装/展开所选文本似乎会在几次编辑后损坏文档。
正确的方法是将所有字符分成一个数组,制定一个逻辑来在window.getSelection()
定义的位置添加/修改/删除标签,然后渲染输出版本以加载到可编辑的div中? 还是有更好的解决方案?
可能没有必要使用 javascript/jquery 手动将元素包装在标签中。 我一直在阅读有关execCommand()
的文章,它似乎得到了广泛的支持。 这将允许在所见即所得编辑器中找到的大多数格式选项,颜色,字体大小,系列,添加链接等...... 我意识到我最初的问题有点宽泛,但也许这也将为其他人指明正确的方向......
例子:
document.execCommand('bold', 0);
document.execCommand('forecolor', 0, '#ff0000');
document.execCommand('fontSize', 0, '7');
在chrome/firefox/safari中工作,还不确定IE。 上面的粗体示例演示了浏览器如何跟踪现有格式并可以打开/关闭样式。
相关文章:
- 基于Jquery的所见即所得,具有直播的可能性
- 代理一个网站能够在iframe中进行所见即所得编辑-它是如何工作的
- 使用PageMod将所有文本框转换为所见即所得HTML编辑器
- JavaScript:将所见即所得编辑器对实时站点的更改转换为jQuery操作
- 所见即所得编辑器适用于速度模板
- 输入法所见即所得编辑器不在mysql数据库中存储值
- 使用SCEditor(所见即所得BBCode)时无法验证空字段
- 如何使用我自己的所见即所得编辑器插入图像
- 所见即所得内容中的撤消和重做SWT中的可编辑内容;不起作用
- 如何在execCommand所见即所得编辑器中查找选定的文本字体大小和名称
- Meteor/Iron路由器-何时何地运行JS以交换到所见即所得
- 使用MathJax的数学方程所见即所得编辑器
- 如何制作一个非常基本的所见即所得
- 所见即所得,没有 HTML 标记
- Javascript - 在将标签环绕后重新选择文本不起作用?所见即所得
- Javascript:在所见即所得编辑器中的插入符号处粘贴文本
- Eclipse Web Development - 安装哪些插件以及如何获取 Dojo, Ajax - 所见即所得开发
- 使用 strip_tags() 和 preg_replace() 显示所见即所得/TinyMCE 文本编辑器中输入的文本
- 所见即所得的 XML 编辑器 Web 应用程序
- 更改所见即所得编辑器上的字体大小选项