JS实现富文本编辑器
来源:互联网 发布:瑞赛网络 编辑:程序博客网 时间:2024/05/16 07:31
最近在做一个项目,需要使用富文本编辑器,在网上找了一些源码之后,感觉并不是很理想,所以想自己实现一个富文本编辑器。
其实要想自己实现一个富文本编辑器也并不是很难,借助 document
关于 documentexecCommand方法,通过给这这个方法传递参数命令可以操作可编辑区域的内容。这个方法的命令大多数是对文档选中区域的操作
(如bold, italics等), 也可以插入一个元素(如增加一个a链接) 或者修改一个完整行 (如缩进)。当元素被设置了contentEditable,通过执行execCommand
方法可以对当前活动元素进行很多操作。
bool = document.execCommand(aCommandName, aShowDefaultUI, aValueArgument)
返回值
Boolean ,如果是 false 则表示操作不被支持或未被启用。
- aShowDefaultUI:Boolean ,是否展示用户界面,一般为 false。Mozilla 没有实现。
- aValueArgument:一些命令需要一些额外的参数值(如insertimage需要提供这个image的url)。默认为null。
参数
aCommandName:String ,命令的名称 。
可用命令列表可以参阅:https://developer.mozilla.org/zh-CN/docs/Web/API/Document/execCommand
下面数说富文本编辑器具体实现。
首先,使用H5的特性,可以自定义标签属性
<a class="btn" data-role="fontName" data-value="宋体">宋体</a>
然后通过document.execCommand命令将相应文本设置为相应样式
$(".editor-option a").click(function(e) { switch($(this).data("role")) { case "fontName": document.execCommand($(this).data("role"), false, $(this).data("value")); break; case "fontSize": document.execCommand($(this).data("role"), false, $(this).data("value")); break; default: document.execCommand($(this).data("role"), false, null); break; } }) });
源码下载:富文本编辑器
0 0
- JS实现富文本编辑器
- js基础-富文本编辑器
- 富文本编辑器XHEditor实现
- js获取富文本编辑器数据
- 轻量级jQuery富文本编辑器 wysiwyg.js
- 所见即所得富文本编辑器实现原理
- django + TinyMCE 实现富文本编辑器
- Javascript实现简单的富文本编辑器
- 仿简书APP富文本编辑器实现
- kindeditor富文本编辑器前端+后端实现
- 利用 javascript 实现富文本编辑器
- 利用 JavaScript 实现富文本编辑器
- cocos2dx-js 实现自定义富文本
- 富文本编辑器
- 富文本编辑器
- Web富文本编辑器
- Flex富文本编辑器
- 富文本编辑器
- RAC学习之:集群中的命令
- Linux的特殊权限
- React Native基础——环境配置、学习资源分享
- angularjs对象扩展与遍历
- Hibernate工作原理及为什么要用?
- JS实现富文本编辑器
- hdu 1512 左偏树
- QQ群、讨论组上传文件,由于网络原因上传失败?
- 【SQL注入】目前的各种问题
- 模拟器提示Unfortunately,Activity has stopped
- 蓝桥 卖鸡蛋
- AndroidPN 掉线的灵异事件
- 关于unity(c#)调用shell脚本
- bug宝典之linux root用户看不到mysql数据库了