webuploader模态框ueditor显示问题解决方法


Posted in Javascript onDecember 27, 2016

webuploader 模态框 ueditor 显示问题

模态框z-index 对应的值

.modal {
 z-index: 10050 !important;
 outline: none !important;
}

遮罩层对应的z-index值

.modal-backdrop {
 border: 0 !important;
 outline: none !important;
 z-index: 10049 !important;
}

ueditor 插件中,默认的z-index值为900 ;

在模态框中使用ueditor,可能会出现不兼容的情况,在ueditor.config.js里面修改z-index值,要比父级结构要大,否则,字体相关的下拉框还是会显示异常,也可以覆盖原来的z-index对应的样式,

.edui-default{
 z-index: 30111 !important;
}

webupload 百度的上传插件,如果在模态框中使用,会出现点击无反应的情况,搜索得之,解决方式是在模态框显示时调用shown.bs.modal 方法去初始化webuploader实例, 但结局就是每次显示模态框都会导致选择文件的按钮越来越大。

以下是方式:

var $list=$("#thelist"); //这几个初始化全局的百度文档上没说明,好蛋疼。
 var $btn =$("#ctlBtn"); //开始上传
 var thumbnailWidth = 100; //缩略图高度和宽度 (单位是像素),当宽高度是0~1的时候,是按照百分比计算,具体可以看api文档
 var thumbnailHeight = 100;
 $("#upload_pic").modal('show');

 $("#upload_pic").on("shown.bs.modal",function(){
  uploader = WebUploader.create({
   // 选完文件后,是否自动上传。
   auto: false,
   // swf文件路径
   swf: base+'/statics/js/webUploader/Uploader.swf',
   // 文件接收服务端。
   server: base + '/upload/uploadImg',
   // 选择文件的按钮。可选。
   // 内部根据当前运行是创建,可能是input元素,也可能是flash.
   pick: '#filePicker',
   // 只允许选择图片文件。
   accept: {
    title: 'Images',
    extensions: 'gif,jpg,jpeg,bmp,png',
    mimeTypes: 'image/*'
   },
   method:'POST',
  });
  // 当有文件添加进来的时候
  uploader.on( 'fileQueued', function( file ) { // webuploader事件.当选择文件后,文件被加载到文件队列中,触发该事件。等效于 uploader.onFileueued = function(file){...} ,类似js的事件定义。
   var $li = $(
     '<div id="' + file.id + '" class="file-item thumbnail">' +
     '<img>' +
     '<div class="info">' + file.name + '</div>' +
     '</div>'
    ),
    $img = $li.find('img');
   // $list为容器jQuery实例
   $list.append( $li );

   // 创建缩略图
   // 如果为非图片文件,可以不用调用此方法。
   // thumbnailWidth x thumbnailHeight 为 100 x 100
   uploader.makeThumb( file, function( error, src ) { //webuploader方法
    if ( error ) {
     $img.replaceWith('<span>不能预览</span>');
     return;
    }

    $img.attr( 'src', src );
   }, thumbnailWidth, thumbnailHeight );
  });
  // 文件上传过程中创建进度条实时显示。
  uploader.on( 'uploadProgress', function( file, percentage ) {
   var $li = $( '#'+file.id ),
    $percent = $li.find('.progress span');
   // 避免重复创建
   if ( !$percent.length ) {
    $percent = $('<p class="progress"><span></span></p>')
     .appendTo( $li )
     .find('span');
   }
   $percent.css( 'width', percentage * 100 + '%' );
  });

  // 文件上传成功,给item添加成功class, 用样式标记上传成功。
  uploader.on( 'uploadSuccess', function( file ) {
   $( '#'+file.id ).addClass('upload-state-done');
  });
  // 文件上传失败,显示上传出错。
  uploader.on( 'uploadError', function( file ) {
   var $li = $( '#'+file.id ),
    $error = $li.find('div.error');
   // 避免重复创建
   if ( !$error.length ) {
    $error = $('<div class="error"></div>').appendTo( $li );
   }

   $error.text('上传失败');
  });

  // 完成上传完了,成功或者失败,先删除进度条。
  uploader.on( 'uploadComplete', function( file ) {
   $( '#'+file.id ).find('.progress').remove();
  });
 });

 $btn.on( 'click', function() {
  uploader.upload();
 });

解决每次点击显示modal导致上传按钮变大的方式为覆盖由webuploader 生成的上传按钮样式

.webuploader-pick{
 padding: 0 !important;
 width: 82px !important;
 height: 38px !important;
 line-height: 38px !important;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery Validation插件remote验证方式的Bug解决
Jul 01 Javascript
Js+Jq获取URL参数的集中方法示例代码
May 20 Javascript
JavaScript实现的圆形浮动标签云效果实例
Aug 06 Javascript
基于jquery实现放大镜效果
Aug 17 Javascript
基于javascript简单实现对身份证校验
Jan 25 Javascript
EditPlus 正则表达式 实战(3)
Dec 15 Javascript
Node.js利用Net模块实现多人命令行聊天室的方法
Dec 23 Javascript
基于Vue开发数字输入框组件
Dec 19 Javascript
vue.js 实现点击按钮动态添加li的方法
Sep 07 Javascript
微信小程序如何实现点击图片放大功能
Jan 21 Javascript
文章或博客自动生成章节目录索引(支持三级)的实现代码
May 10 Javascript
在Vue中使用Echarts实例图的方法实例
Oct 10 Javascript
正则中的回溯定义与用法分析【JS与java实现】
Dec 27 #Javascript
Vue.js双向绑定操作技巧(初级入门)
Dec 27 #Javascript
JS实现页面中所有img对象添加onclick事件及新窗口查看图片的方法
Dec 27 #Javascript
JS使用正则实现去掉字符串左右空格的方法
Dec 27 #Javascript
js使用Replace结合正则替换重复出现的字符串功能示例
Dec 27 #Javascript
easyUI实现类似搜索框关键词自动提示功能示例代码
Dec 27 #Javascript
jQuery获取选中单选按钮radio的值
Dec 27 #Javascript
You might like
php桌面中心(四) 数据显示
2007/03/11 PHP
使用VisualStudio开发php的图文设置方法
2010/08/21 PHP
php读取flash文件高宽帧数背景颜色的方法
2015/01/06 PHP
php中this关键字用法分析
2016/12/07 PHP
PHP执行shell脚本运行程序不产生core文件的方法
2016/12/28 PHP
JavaScript面向对象编程
2008/03/02 Javascript
jquery html动态生成select标签出问题的解决方法
2013/11/20 Javascript
简单的jquery左侧导航栏和页面选中效果
2014/08/21 Javascript
jQuery中常用的遍历函数用法实例总结
2015/09/01 Javascript
JQuery Mobile实现导航栏和页脚
2016/03/09 Javascript
浅析jQuery中使用$所引发的问题
2016/05/29 Javascript
Javascript之Number对象介绍
2016/06/07 Javascript
webstorm和.vue中es6语法报错的解决方法
2018/05/08 Javascript
javascript实现的字符串转换成数组操作示例
2019/06/13 Javascript
Element Alert警告的具体使用方法
2020/07/27 Javascript
Vue使用鼠标在Canvas上绘制矩形
2020/12/24 Vue.js
JavaScript实现滚动加载更多
2020/12/27 Javascript
微信小程序实现简单购物车功能
2020/12/30 Javascript
[01:51]历届DOTA2国际邀请赛举办地回顾 TI9落地上海
2018/08/26 DOTA
Python 文件读写操作实例详解
2014/03/12 Python
Python获取网页上图片下载地址的方法
2015/03/11 Python
python编程羊车门问题代码示例
2017/10/25 Python
基于PyQt4和PySide实现输入对话框效果
2019/02/27 Python
python3图片文件批量重命名处理
2019/10/31 Python
将python包发布到PyPI和制作whl文件方式
2019/12/25 Python
Django后台管理系统的图文使用教学
2020/01/20 Python
python itsdangerous模块的具体使用方法
2020/02/17 Python
django admin管理工具自定义时间区间筛选器DateRangeFilter介绍
2020/05/19 Python
世界领先的以旅馆为主的在线预订平台:Hostelworld
2016/10/09 全球购物
女方回门宴答谢词
2014/01/14 职场文书
迟到检讨书2000字(精选篇)
2014/10/07 职场文书
三八妇女节寄语
2015/02/27 职场文书
门球健将观后感
2015/06/16 职场文书
安全温馨提示语大全
2015/07/14 职场文书
小学体育课教学反思
2016/02/16 职场文书
实习报告怎么写
2019/06/20 职场文书