需求:后台管理系统一般都会有图文混排功能(比如新闻应用,电商商品详情),这个一般使用富文本编辑器来实现;还有一个就是图片的裁切(比如用户的头像,比如博客的封面),因为在开发这两个功能的时候,也遇到了很多的坑,所以在这里记录一下。
富文本编辑器实现
技术选型:富文本编辑器很多,我们选择的是layui editor,版本是2.5.6
实现效果如下: 来源:layui eidt
开发步骤:
1、导入layui的css、layui的js(注意这里是2.5.6的版本)
在body之前导入css,在body之后导入js文件(否则会有坑)
2、在body中添加一个文本域
<body>
<form>
...省略其他表单元素
<textarea id="content" style="display: none;"></textarea>
</form>
</body>
3、初始化富文本编辑器
layedit的实现思路,先找到一个宿主标签(textarea),在它的后面添加一个兄弟节点来实现的,所以宿主元素必须要写。其实尝试了一下,使用其他的标签作为宿主标签也可以。比如div,但是不建议这么干,因为div不是表单元素,提交数据拿不到值。
注意:这个代码一定要在文档加载完成之后再执行,否则没效果,代码来源于文档
<script>
layui.use('layedit', function(){
var layedit = layui.layedit;
//build方法的demo参数是宿主标签的id属性,注意