热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:UEditor调用上传图片上传文件等模块

1、引入ue相关文件,写好初始代码为了更好的封装整一个单独的插件,这里我们要做到示例化ue后隐藏网页中的编辑窗口,并移除焦点。

1、引入ue相关文件,写好初始代码

为了更好的封装整一个单独的插件,这里我们要做到示例化ue后隐藏网页中的编辑窗口,并移除焦点。












外部调用UEditor的多图上传和附件上传示例

















        2、监听多图上传和上传附件组件的插入动作


      uploadEditor.ready(function () {
      // 监听插入图片
      uploadEditor.addListener("beforeInsertImage", _beforeInsertImage);
      // 监听插入附件
      uploadEditor.addListener("afterUpfile",_afterUpfile);
      });

        

      3、自定义按钮绑定触发多图上传和上传附件对话框的事件

      我们对id="j_upload_img_btn"和id="j_upload_file_btn"的两个button绑定触发ue多图上传和上传附件对话框的事件,这样我们才能够操作ue。


      document.getElementById(‘j_upload_img_btn‘).Onclick= function () {
      var dialog = uploadEditor.getDialog("insertimage");
      dialog.title = ‘多图上传‘;
      dialog.render();
      dialog.open();
      };

      document.getElementById(‘j_upload_file_btn‘).Onclick= function () {
      var dialog = uploadEditor.getDialog("attachment");
      dialog.title = ‘附件上传‘;
      dialog.render();
      dialog.open();
      };

        

      4、多图上传

      多图上传的核心在于“beforeInsertImage”动作,此动作返回已选图片的信息集合。


      function _beforeInsertImage(t, result) {
      var imageHtml = ‘‘;
      for(var i in result){
      imageHtml += ‘

    • ‘+result[i].alt+‘
    • ‘;
      }
      document.getElementById(‘upload_img_wrap‘).innerHTML = imageHtml;
      }

        

      5、新增“afterUpfile”动作

      对于附件上传,ue源码中并未提供插入动作的相关事件,所以这里我们手动添加一个触发动作“afterUpfile”。

      打开“ueditor.all.js”,搜索代码:


      me.execCommand(‘insertHtml‘, html); //在此代码后插入以下代码
      me.fireEvent(‘afterUpfile‘, filelist);

        这样我们就新增了“afterUpfile”事件。

      技术图片

      这里核心在于 “fireEvent”。

      6、附件上传

      上一步中我们新增了“afterUpfile”动作,这里直接监听就可以了。


      function _afterUpfile(t, result) {
      var fileHtml = ‘‘;
      for(var i in result){
      fileHtml += ‘

    • ‘+result[i].url+‘
    • ‘;
      }
      document.getElementById(‘upload_file_wrap‘).innerHTML = fileHtml;
      }

        

      以下是完整代码:

      注:本文基于UEditor1.4.3.3版本。












      外部调用UEditor的多图上传和附件上传示例

















            

           


          推荐阅读
          • 本文详细介绍了如何解决Uploadify插件在Internet Explorer(IE)9和10版本中遇到的点击失效及JQuery运行时错误问题。通过修改相关JavaScript代码,确保上传功能在不同浏览器环境中的一致性和稳定性。 ... [详细]
          • 深入解析Android自定义View面试题
            本文探讨了Android Launcher开发中自定义View的重要性,并通过一道经典的面试题,帮助开发者更好地理解自定义View的实现细节。文章不仅涵盖了基础知识,还提供了实际操作建议。 ... [详细]
          • 优化ListView性能
            本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
          • 本文介绍了如何利用JavaScript或jQuery来判断网页中的文本框是否处于焦点状态,以及如何检测鼠标是否悬停在指定的HTML元素上。 ... [详细]
          • IneedtofocusTextCellsonebyoneviaabuttonclick.ItriedlistView.ScrollTo.我需要通过点击按钮逐个关注Tex ... [详细]
          • 本文详细介绍了Java中org.eclipse.ui.forms.widgets.ExpandableComposite类的addExpansionListener()方法,并提供了多个实际代码示例,帮助开发者更好地理解和使用该方法。这些示例来源于多个知名开源项目,具有很高的参考价值。 ... [详细]
          • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
          • 导航栏样式练习:项目实例解析
            本文详细介绍了如何创建一个具有动态效果的导航栏,包括HTML、CSS和JavaScript代码的实现,并附有详细的说明和效果图。 ... [详细]
          • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
          • 主要用了2个类来实现的,话不多说,直接看运行结果,然后在奉上源代码1.Index.javaimportjava.awt.Color;im ... [详细]
          • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
          • 本文介绍了如何使用JQuery实现省市二级联动和表单验证。首先,通过change事件监听用户选择的省份,并动态加载对应的城市列表。其次,详细讲解了使用Validation插件进行表单验证的方法,包括内置规则、自定义规则及实时验证功能。 ... [详细]
          • 本文详细介绍了如何使用 Yii2 的 GridView 组件在列表页面实现数据的直接编辑功能。通过具体的代码示例和步骤,帮助开发者快速掌握这一实用技巧。 ... [详细]
          • 使用 Azure Service Principal 和 Microsoft Graph API 获取 AAD 用户列表
            本文介绍了一段通用代码示例,该代码不仅能够操作 Azure Active Directory (AAD),还可以通过 Azure Service Principal 的授权访问和管理 Azure 订阅资源。Azure 的架构可以分为两个层级:AAD 和 Subscription。 ... [详细]
          • 本文基于刘洪波老师的《英文词根词缀精讲》,深入探讨了多个重要词根词缀的起源及其相关词汇,帮助读者更好地理解和记忆英语单词。 ... [详细]
          author-avatar
          guan
          这个家伙很懒,什么也没留下!
          PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
          Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有