zoukankan      html  css  js  c++  java
  • layedit添加首行缩进

    由于在编辑的时候,有首行缩进的需求,并且,如果直接使用空格进行缩进,还会出现layedit看到的效果和实际显示的效果不一致的情况。多方搜索无果,于是决定修改源代码。具体步骤如下:

    1、首先找到layedit.js文件,打开

    路径位置如下:layui/lay/modules/layedit.js,我是在Kz.layedit的基础上进行修改的,关于Kz.layedit,它是这位大佬在layedit的基础上进行的扩展:https://gitee.com/KnifeZ/Kz.layedit

    2、在工具面板添加首行缩进图标

    搜索“全部工具”,定位到如下位置:

    添加首行缩进图标:

    ,indent:'<i class="layui-icon layedit-tool-indent" title="首行缩进" layedit-event="indent" >&#xe66b;</i>'

    在使用layedit.build()函数渲染富文本编辑器的时候,添加此工具:

    3、设置工具的选中效果

    搜索“对其”定位到如下位置,并添加工具按钮的选中效果:

    代码如下:

                        //首行缩进
                        if (textIndent === '2em'){
                            item('indent').addClass(CHECK);
                        }else {
                            item('indent').removeClass(CHECK);
                        }

     

    这其中的textIndent需要在这里添加定义:

     代码如下:

    , textIndent = this.style.textIndent;

    4、搜索“触发工具”,定位到如下位置,并添加首行缩进实现代码

    首行缩进作为一个方法,添加进来,方法名为indent,这个和前面添加工具时的layedit-event="indent"是对应的:

    代码如下:

                        //首行缩进
                        , indent: function (range) {
                            var container = getContainer(range);
    
                            var indent = container.parentNode.style.textIndent;
                            if (indent === '2em'){
                                container.parentNode.style.textIndent = '';
                            }else {
                                container.parentNode.style.textIndent = '2em'
                            }
                        }

    5、效果

  • 相关阅读:
    Linux设备驱动之Ioctl控制
    虚拟内存与物理内存的区别
    怎么远程控制他人电脑
    二维数组和指针
    二维数组和指针(C语言)
    帧率、码流与分辨率相关知识
    深入理解FIFO
    安装lsb_release
    Linux初学之vmware Workstation 网络连接三种模式
    RTSP协议学习笔记
  • 原文地址:https://www.cnblogs.com/sctb/p/11919641.html
Copyright © 2011-2022 走看看