• 技术文章 >web前端 >js教程

    使用富文本编辑器如何调用云盘的图片文件(代码分析)

    不言不言2018-08-25 13:45:55原创846
    本篇文章给大家带来的内容是关于富文本编辑器如何调用云盘的图片文件(代码分析),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

    最近在开发一个多用户系统,由于在发布文章的时候需要用到编辑器。 UEditor是很多网友推荐的一个,强大,我下载之后,发现这个编辑器代码已经达到2万多行,受不了这种臃肿。
    对此我发现了layui有一个自带的编辑器,好像是被雪藏了,不知道是不是官方不太推荐了?
    文档地址: http://www.layui.com/doc/modules/layedit.html
    LayEdit仍旧遵循极简的设计风格,无论是UI上,还是接口使用上,是我喜欢的一个编辑器,代码只有几百行。
    当我需要在编辑器上传图片,还有曾经上传过的图片直接调用,这样就需要自己写一个获取远程图片,对此百转千回,直接点吧,付费找人帮忙吧
    也没遇到接单,也没得到啥有用的信息。
    于是我就想编辑器表情不就是图片么?于是找到编辑器js文件,查看到表情带js代码,代码不多就几十行
    这算是第一次真正接触LayEdit,表情用的是layui.layer,tips层,而我需要的是支持tab的页面层layer.open,这算是加深了layer的认识
    于是我把页面付出层搭建好之后,在用ajax请求应该就好了吧,
    于是发了一个文

    //m.sbmmt.com/js-tutorial-409066.html

    结果我又遇到问题了,请求回来的数据页面加载不了,对于菜鸟来说还是比较坑,这是因为dom顺序问题。
    后来能加载图片了,进行拼接

    function myphoto(tabid) {
          var html = "";
          html += '<ul class="swla-yunpan-ul">';
            //图片资源
            $.get("/api",
            {
              limit:10,
            },
            function(data){
              var list=data.data
               layui.each(list,function(index, item) {
               // 用了format加载数据
                html +='<li title="{0}"><img src="{1}" alt="{2}"></li>'.format(item.title,item.src,item.alt);
              });
              html += '</ul>';
              document.getElementById("yun-"+tabid).innerHTML=html; 
              //监听li点击事件
              $("#yun").on("click",'li',function(e){
                //获取点击的图片
                var ehtml=e.currentTarget.innerHTML
                 参考下面   监听点击图片事件部分
                //关闭云盘
                layer.close(index);
              })
            });
           $(document).off('click', yunpan.hide).on('click', yunpan.hide);
        }

    又不会把图片插入到编辑器,于是又发了一文

    //m.sbmmt.com/js-tutorial-409068.html

    结果还是没人关注,又开始对表情部分进行摸索,发现表情有一段代码如下

     //表情
          ,face: function(range){
            face.call(this, function(img){
              insertInline.call(iframeWin, 'img', {
                src: img.src
                ,alt: img.alt
              }, range);
            });
          }我想我应该从这个地方入手了
    我把捕获到的li事件进行修改类似方法,yunpan:function(range){
            yunpan.call(this, function(img){
              insertInline.call(iframeWin, 'img', {
                src: img.src
                ,alt: img.alt
              }, range);
            });
          }测试成功

    对于监听点击图片事件部分代码如下

    //监听li点击事件
              $("#yun").on("click",'li',function(e){
                //获取点击的图片
                var img=e.target.src
                var alt=e.target.alt
                callback && callback({
                  src: img
                  ,alt: alt
                });
                //关闭云盘
                layer.close(index);
              })

    最终效果图如下:
    2616768_1533744586378_81956.jpg
    点击编辑器云盘,弹出页面层,通过tab切换,不同栏目,再选择图片,关闭云盘,插入编辑器。

    相关推荐:

    yii2集成富文本编辑器redactor html 富文本编辑器 富文本编辑器插件 django 富文本编辑器

    ThinkPHP中使用Ueditor富文本编辑器,

    以上就是使用富文本编辑器如何调用云盘的图片文件(代码分析)的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:富文本编辑器
    上一篇:富文本中如何选择一个图片插入编辑器(附代码) 下一篇:layui form表单的动态渲染与vue.js之间的冲突解决方法(附代码)
    20期PHP线上班

    相关文章推荐

    精选22门好课,价值3725元,开通VIP免费学习!• ArtEditor富文本编辑器增加表单提交功能_javascript技巧• ThinkPHP中使用Ueditor富文本编辑器• mysql - 富文本编辑器与php后台开发是怎么结合使用的呢?• javascript - 求推荐一款安全实用的开源富文本编辑器,做网站用的,大家都在用哪个?• javascript - 对富文本编辑器提交的结果过滤
    1/1

    PHP中文网