热门标签 | 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的多图上传和附件上传示例

















            

           


          推荐阅读
          • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
          • android listview OnItemClickListener失效原因
            最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
          • 移动端常用单位——rem的使用方法和注意事项
            本文介绍了移动端常用的单位rem的使用方法和注意事项,包括px、%、em、vw、vh等其他常用单位的比较。同时还介绍了如何通过JS获取视口宽度并动态调整rem的值,以适应不同设备的屏幕大小。此外,还提到了rem目前在移动端的主流地位。 ... [详细]
          • iOS超签签名服务器搭建及其优劣势
            本文介绍了搭建iOS超签签名服务器的原因和优势,包括不掉签、用户可以直接安装不需要信任、体验好等。同时也提到了超签的劣势,即一个证书只能安装100个,成本较高。文章还详细介绍了超签的实现原理,包括用户请求服务器安装mobileconfig文件、服务器调用苹果接口添加udid等步骤。最后,还提到了生成mobileconfig文件和导出AppleWorldwideDeveloperRelationsCertificationAuthority证书的方法。 ... [详细]
          • JavaScript和HTML之间的交互是经由过程事宜完成的。事宜:文档或浏览器窗口中发作的一些特定的交互霎时。能够运用侦听器(或处置惩罚递次来预订事宜),以便事宜发作时实行相应的 ... [详细]
          • 本文详细介绍了在ASP.NET中获取插入记录的ID的几种方法,包括使用SCOPE_IDENTITY()和IDENT_CURRENT()函数,以及通过ExecuteReader方法执行SQL语句获取ID的步骤。同时,还提供了使用这些方法的示例代码和注意事项。对于需要获取表中最后一个插入操作所产生的ID或马上使用刚插入的新记录ID的开发者来说,本文提供了一些有用的技巧和建议。 ... [详细]
          • 本文介绍了解决IE678伪类不兼容问题的方法,包括少用CSS3和HTML5独有的属性,使用CSS hacker,使用last-child清除浮动、批量添加标签、去掉list item最后一个的border-right等技巧。同时还介绍了使用after清除浮动时加上IE独有属性zoom:1的处理方法。另外,本文还提到可以使用jQuery代替批量添加标签的功能,以及使用负边距和CSS2选择器element+element去掉list item最后一个的border-right的方法。 ... [详细]
          • ASP.NET2.0数据教程之十四:使用FormView的模板
            本文介绍了在ASP.NET 2.0中使用FormView控件来实现自定义的显示外观,与GridView和DetailsView不同,FormView使用模板来呈现,可以实现不规则的外观呈现。同时还介绍了TemplateField的用法和FormView与DetailsView的区别。 ... [详细]
          • MyBatis多表查询与动态SQL使用
            本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
          • Day2列表、字典、集合操作详解
            本文详细介绍了列表、字典、集合的操作方法,包括定义列表、访问列表元素、字符串操作、字典操作、集合操作、文件操作、字符编码与转码等内容。内容详实,适合初学者参考。 ... [详细]
          • SpringMVC接收请求参数的方式总结
            本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
          • 本文介绍了使用Python解析C语言结构体的方法,包括定义基本类型和结构体类型的字典,并提供了一个示例代码,展示了如何解析C语言结构体。 ... [详细]
          • 基于Socket的多个客户端之间的聊天功能实现方法
            本文介绍了基于Socket的多个客户端之间实现聊天功能的方法,包括服务器端的实现和客户端的实现。服务器端通过每个用户的输出流向特定用户发送消息,而客户端通过输入流接收消息。同时,还介绍了相关的实体类和Socket的基本概念。 ... [详细]
          • 本文介绍了一个免费的asp.net控件,该控件具备数据显示、录入、更新、删除等功能。它比datagrid更易用、更实用,同时具备多种功能,例如属性设置、数据排序、字段类型格式化显示、密码字段支持、图像字段上传和生成缩略图等。此外,它还提供了数据验证、日期选择器、数字选择器等功能,以及防止注入攻击、非本页提交和自动分页技术等安全性和性能优化功能。最后,该控件还支持字段值合计和数据导出功能。总之,该控件功能强大且免费,适用于asp.net开发。 ... [详细]
          • 本文介绍了使用Python编写购物程序的实现步骤和代码示例。程序启动后,用户需要输入工资,并打印商品列表。用户可以根据商品编号选择购买商品,程序会检测余额是否充足,如果充足则直接扣款,否则提醒用户。用户可以随时退出程序,在退出时打印已购买商品的数量和余额。附带了完整的代码示例。 ... [详细]
          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社区 版权所有