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 相关文章推荐
驱动事件的addEvent.js代码
Mar 27 Javascript
利用js读取动态网站从服务器端返回的数据
Feb 10 Javascript
javascript数组去重方法终极总结
Jun 05 Javascript
JavaScript返回网页中锚点数目的方法
Apr 03 Javascript
判断访客终端类型集锦
Jun 05 Javascript
JS 实现可停顿的垂直滚动实例代码
Nov 23 Javascript
详解在vue-cli中使用路由
Sep 25 Javascript
详解小程序毫秒级倒计时(适用于拼团秒杀功能)
May 05 Javascript
教你搭建按需加载的Vue组件库(小结)
Jul 29 Javascript
javascript刷新父页面方法汇总详解
Oct 10 Javascript
vue组件创建的三种方式小结
Feb 03 Javascript
js实现双色球效果
Aug 02 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 获取页面中指定内容的实现类
2014/01/23 PHP
隐性调用php程序的方法
2015/06/13 PHP
php将远程图片保存到本地服务器的实现代码
2015/08/03 PHP
use jscript with List Proxy Server Information
2007/06/11 Javascript
使用phantomjs进行网页抓取的实现代码
2014/09/29 Javascript
封装好的一个万能检测表单的方法
2015/01/21 Javascript
JS响应鼠标点击实现两个滑块区间拖动效果
2015/10/26 Javascript
在JavaScript中对HTML进行反转义详解
2016/05/18 Javascript
BooStrap对导航条的改造实践小结
2016/09/21 Javascript
详解JavaScript中数组的reduce方法
2016/12/02 Javascript
bootstrap datetimepicker 日期插件在火狐下出现一条报错信息的原因分析及解决办法
2017/03/08 Javascript
详解vue+vueRouter+webpack的简单实例
2017/06/17 Javascript
AngularJS与BootStrap模仿百度分页的示例代码
2018/05/23 Javascript
Vue2.0 v-for filter列表过滤功能的实现
2018/09/07 Javascript
全面了解JavaScript的作用域链
2019/04/03 Javascript
使用Vue 实现滑动验证码功能
2019/06/27 Javascript
js实现石头剪刀布游戏
2020/10/11 Javascript
打印出python 当前全局变量和入口参数的所有属性
2009/07/01 Python
python之文件的读写和文件目录以及文件夹的操作实现代码
2016/08/28 Python
浅谈使用Python内置函数getattr实现分发模式
2018/01/22 Python
Python实现PS图像调整颜色梯度效果示例
2018/01/25 Python
简单实现Python爬取网络图片
2018/04/01 Python
解决pandas中读取中文名称的csv文件报错的问题
2018/07/04 Python
Appium+Python自动化测试之运行App程序示例
2019/01/23 Python
Django在pycharm下修改默认启动端口的方法
2019/07/26 Python
Python3.7基于hashlib和Crypto实现加签验签功能(实例代码)
2019/12/04 Python
python 回溯法模板详解
2020/02/26 Python
如何使用python记录室友的抖音在线时间
2020/06/29 Python
python制作抽奖程序代码详解
2021/01/15 Python
美国维生素、补充剂、保健食品购物网站:Vitacost
2016/08/05 全球购物
联想马亚西亚官方网站:Lenovo Malaysia
2018/09/19 全球购物
文明演讲稿范文
2014/05/12 职场文书
十佳家长事迹材料
2014/08/26 职场文书
2014年学生党支部工作总结
2014/12/20 职场文书
秦始皇兵马俑导游词
2015/02/02 职场文书
Spring Boot项目如何优雅实现Excel导入与导出功能
2022/06/10 Java/Android