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 相关文章推荐
htm调用JS代码
Mar 15 Javascript
ajax更新数据后,jquery、jq失效问题
Mar 16 Javascript
dojo学习第一天 Tab选项卡 实现
Aug 28 Javascript
jquery遍历筛选数组的几种方法和遍历解析json对象
Dec 13 Javascript
jquery的ajax异步请求接收返回json数据实例
Jun 16 Javascript
动态更新highcharts数据的实现方法
May 28 Javascript
AngularJS 路由和模板实例及路由地址简化方法(必看)
Jun 24 Javascript
利用vue-router实现二级菜单内容转换
Nov 30 Javascript
JQ中$(window).load和$(document).ready区别与执行顺序
Mar 01 Javascript
Bootstrap一款超好用的前端框架
Sep 25 Javascript
解决Vue中mounted钩子函数获取节点高度出错问题
May 18 Javascript
JS实现可视化音频效果的实例代码
Jan 16 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选择排序法实现数组排序实例分析
2015/02/16 PHP
PHP模版引擎原理、定义与用法实例
2019/03/29 PHP
ajax上传时参数提交不更新等相关问题
2012/12/11 Javascript
jQuery统计上传文件大小的方法
2015/01/24 Javascript
javascript相关事件的几个概念
2015/05/21 Javascript
jquery实现选中单选按钮下拉伸缩效果
2015/08/06 Javascript
jQuery实现的网格线绘制方法
2016/06/20 Javascript
javascript简单实现跟随滚动条漂浮的返回顶部按钮效果
2016/08/19 Javascript
node.js Sequelize实现单实例字段或批量自增、自减
2016/12/08 Javascript
微信小程序 解决swiper不显示图片的方法
2017/01/04 Javascript
javascript history对象详解
2017/02/09 Javascript
vue数据双向绑定原理解析(get &amp; set)
2017/03/08 Javascript
js获取文件里面的所有文件名(实例)
2017/10/17 Javascript
详解Nodejs get获取远程服务器接口数据
2019/03/26 NodeJs
JavaScript表格隔行变色和Tab标签页特效示例【附jQuery版】
2019/07/11 jQuery
bootstrap Table实现合并相同行
2019/07/19 Javascript
[05:13]TI4 中国战队 机场出征!!
2014/07/07 DOTA
Python 元类使用说明
2009/12/18 Python
python距离测量的方法
2018/03/06 Python
tensorflow 获取模型所有参数总和数量的方法
2018/06/14 Python
解决pycharm 工具栏Tool中找不到Run manager.py Task的问题
2019/07/01 Python
python Pexpect模块的使用
2020/12/25 Python
美国狗旅行和户外用品领先供应商:kurgo
2020/08/18 全球购物
新浪网技术部笔试题
2016/08/26 面试题
linux面试题参考答案(10)
2013/11/04 面试题
啤酒销售实习自我鉴定
2013/09/24 职场文书
矿泉水广告词
2014/03/20 职场文书
校庆筹备方案
2014/03/30 职场文书
2014年初三班主任工作总结
2014/12/05 职场文书
学校重阳节活动总结
2015/03/24 职场文书
大学生心理健康教育心得体会
2016/01/12 职场文书
学校教代会开幕词
2016/03/04 职场文书
文明医院的标语集锦!
2019/07/24 职场文书
【HBU】数据库第四周 单表查询
2021/04/05 SQL Server
Spring Cache和EhCache实现缓存管理方式
2021/06/15 Java/Android
springboot集成springCloud中gateway时启动报错的解决
2021/07/16 Java/Android