javascript – 创建简单的富文本WYSIWYG编辑器的最佳方法是什么?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 创建简单的富文本WYSIWYG编辑器的最佳方法是什么?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1661字,纯文字阅读大概需要3分钟。
内容图文
![javascript – 创建简单的富文本WYSIWYG编辑器的最佳方法是什么?](/upload/InfoBanner/zyjiaocheng/776/7e28fdbef55a485dafcd07ea816cafa7.jpg)
我需要创建一个简单的富文本编辑器,使用任意标记将其内容保存到XML文件,以指示特殊的文本样式(例如:[b] … [/ b]为粗体和[i] … [/我为斜体).所有后端PHP的东西看起来都相当简单,但该功能的前端WYSIWYG部分看起来有点复杂.我一直不愿意使用当前可用的基于JavaScript的WYSIWYG编辑器之一,因为我想要允许的富文本选项非常有限,而且这些应用程序功能如此全面,以至于它们似乎需要做更多工作到我需要的功能.
因此,在开始创建一个简单的富文本编辑器时,我遇到了三种方法:
>前两种方法使用contentEditable或designMode属性创建可编辑元素,使用execCommand()方法将新文本样式应用于选定范围.
>第一个选项使用标准div元素,对该元素内容执行所有样式命令.
>第二个选项使用iframe中包含的窗口的可编辑主体,然后将从父文档中的按钮启动的任何样式命令传递到其contentWindow中,以更改所包含主体中的选定范围.这似乎是完成与选项1相同效果的几个额外步骤,但我想在其自己的文档中隔离可编辑内容有其优点.
>第三个选项使用覆盖div的textarea,并使用oninput JS事件更新背景div的innerHTML,以便在输入textarea的值发生变化时与其匹配.显然,这需要一些字符串finagling来将textarea中的换行符等元素转换为< br />在div中,但是这将允许我保留我的[/]标记的完整性,同时将潜在杂乱的DOM操作降级到前端显示.
我可以看到每种方法的优点和缺点. contentEditable解决方案似乎最初是最简单的,但是对于这些功能的支持往往因浏览器而异,并且支持它的每个浏览器在实现execCommand()时似乎都以不同的方式操纵DOM.如前所述,textarea / div解决方案似乎是保留我的任意样式约定的最佳方法,但是在输出div中显示富文本的自定义字符串操作过程可能会非常繁琐.
所以,我向你提出我的问题:鉴于我已经概述的发展目标,你会选择哪种方法,为什么?当然,如果还有另一种方法,我可以更好地服务于我的目的,请赐教!
提前致谢!
解决方法:
你看过http://php.net/manual/en/book.bbcode.php吗?这是你的答案.如果你有疑虑,那么你做错了什么.
内容总结
以上是互联网集市为您收集整理的javascript – 创建简单的富文本WYSIWYG编辑器的最佳方法是什么?全部内容,希望文章能够帮你解决javascript – 创建简单的富文本WYSIWYG编辑器的最佳方法是什么?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。