文档章节

uploadify插件BUG

流云飘雪dyg
 流云飘雪dyg
发布于 2017/09/11 18:57
字数 425
阅读 4
收藏 0

Uploadify:

BUG1:文件上传后,点击“取消”或“取消所有上传”,然后上传同一个文件,提示“文件已存在”

修改方法:

找到源码中cancel取消方法:(添加代码)

 cancel: function (fileID, supressEvent) {

            var args = arguments;

            this.each(function () {

                // Create a reference to the jQuery DOM object

                var $this = $(this),

                swfuploadify = $this.data('uploadify'),

                settings = swfuploadify.settings,

                delay = -1;

                delete swfuploadify.queueData.files[fileID];

                if (args[0]) {

                    // Clear the queue

                    if (args[0] == '*') {

                        var queueItemCount = swfuploadify.queueData.queueLength;

                        $('#' + settings.queueID).find('.uploadify-queue-item').each(function () {

                            delay++;

                            if (args[1] === true) {

                                swfuploadify.cancelUpload($(this).attr('id'), false);

                            } else {

                                swfuploadify.cancelUpload($(this).attr('id'));

                            }

                            /* 添加代码 */

                            delete swfuploadify.queueData.files[$(this).attr('id')];

                            swfuploadify.queueData.queueLength = swfuploadify.queueData.queueLength - 1;

                            /* 添加结束 */

                            $(this).find('.data').removeClass('data').html(' - Cancelled');

                            $(this).find('.uploadify-progress-bar').remove();

                            $(this).delay(1000 + 100 * delay).fadeOut(500, function () {

                                $(this).remove();

                            });

                        });

                        swfuploadify.queueData.queueSize = 0;

                        swfuploadify.queueData.queueLength = 0;

                        // Trigger the onClearQueue event

                        if (settings.onClearQueue) settings.onClearQueue.call($this, queueItemCount);

                    } else {

                        for (var n = 0; n < args.length; n++) {

                            swfuploadify.cancelUpload(args[n]);

                            /* 添加代码 */

                            delete swfuploadify.queueData.files[args[n]];

                            swfuploadify.queueData.queueLength = swfuploadify.queueData.queueLength - 1;

                            /* 添加结束 */

                            $('#' + args[n]).find('.data').removeClass('data').html(' - Cancelled');

                            $('#' + args[n]).find('.uploadify-progress-bar').remove();

                            $('#' + args[n]).delay(1000 + 100 * n).fadeOut(500, function () {

                                $(this).remove();

                            });

                        }

                    }

                } else {

                    var item = $('#' + settings.queueID).find('.uploadify-queue-item').get(0);

                    $item = $(item);

                    swfuploadify.cancelUpload($item.attr('id'));

                    $item.find('.data').removeClass('data').html(' - Cancelled');

                    $item.find('.uploadify-progress-bar').remove();

                    $item.delay(1000).fadeOut(500, function () {

                        $(this).remove();

                    });

                }

            });

 

        }

 

BUG2:上传个文件提示“文件已存在”,点击“确定”,页面删除,但是再上传同一个文件是,会提示2次“文件已存在”(说明队列中文件根本没有删除只是页面显示删除了)

修改:找到对应的方法(根据提示信息搜索到对应的方法,添加代码)

onSelect: function (file) {

            // Load the swfupload settings

            var settings = this.settings;

            // Check if a file with the same name exists in the queue

            var queuedFile = {};

            for (var n in this.queueData.files) {

                queuedFile = this.queueData.files[n];

                if (queuedFile.uploaded != true && queuedFile.name == file.name) {

                    var replaceQueueItem = confirm('文件名为 "' + file.name + '" 文件已存在.\n你是否想在队列中替换现有的文件?');

                    if (!replaceQueueItem) {

                        this.cancelUpload(file.id);

                        this.queueData.filesCancelled++;

                        return false;

                    } else {

                    /* 添加代码 */

                        $('#' + queuedFile.id).remove();

                    /* 添加结束 */

                        this.cancelUpload(queuedFile.id);

                        this.queueData.filesReplaced++;

                    }

                }

            }

© 著作权归作者所有

共有 人打赏支持
流云飘雪dyg
粉丝 4
博文 3
码字总数 597
作品 0
潍坊
uploadify插件在IE下的BUG

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chengyi_L/article/details/46415717 项目用到了uploadify插件,在调试IE兼容性的时候,发现包含uploadify插件...

roy711093
2015/06/08
0
0
uploadify 上传时丢失session

uploadify上传用的是一个flash插件,flash中有个bug就是自身创建一个session,这样就导致与web本身的session不一致 权限验证失败的问题。 因为uploadify是不会自动传送session值的,所以当s...

自由de风
2015/05/13
0
3
CodeIgniter + uploadify 在 IE 下会话丢失问题的解决方案

最近需要学习并用CodeIgniter框架对一个项目进行二次开发,由于之前一直都是使用Symfony做项目,所以再换到CodeIgniter项目上还是比较顺畅的。不过相比较之下,感觉CodeIgniter比Symfony要轻...

random123
2014/06/23
0
0
余正忠/open-bug

PPM Bug 缺陷管理系统 项目主页: http://www.ppmdoc.com 免费下载: http://www.ppmdoc.com 网友提供的maven版本:https://git.oschina.net/niweiwei 简介: PPM缺陷管理系统是在见到当前免...

余正忠
2013/08/06
0
0
CI框架如何在主目录application目录之外使用uploadify上传插件和bootstrap前端框架:

购买阿里云相关服务,这里可以领取优惠券, 有的产品5折优惠哟, 注意, 领取的优惠券30天内有效,尽快使用: 领取方式:进入链接后 页面下拉 一键领取全部 或者按需每次领取对应的优惠,领取链接...

兔子想飞
2016/03/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

RedHat已更改其开源许可规则

对于编程圈外的人来说,软件许可证似乎并不重要,但是,在开源领域,开源许可是非常重要的。 因此,领先的Linux公司Red Hat宣布了一件大事,所有新的由Red Hat发起的使用GNU通用公共许可证(...

linux-tao
25分钟前
7
0
游戏化策划的反馈机制

简评:如何低成本地设计游戏化活动运营方案 当项目活动组采用游戏化机制来设计活动时,往往会犯一个错误 —— 以为物质奖励(金钱或实物)就是终极奖励。然后一次又一次的证据显示,有形奖励...

极光推送
27分钟前
1
0
PHP "延迟静态绑定" 功能,static

从这个名字的定义提取出两个关键点,第一点静态,也就是说这个功能只适用于静态属性或静态方法。 第二点延迟绑定,这个根据下面代码就可以很好的理解 class A{ static $name = "Tom";...

nsns
32分钟前
1
0
《看图轻松理解数据结构与算法系列》导引贴

最近学习数据结构,遇到一个很喜欢的博主,他的文章图文并茂,理解起来很容易。特此开贴记录,方便反复阅读。 博主主页 https://juejin.im/user/57c3970f79bc440063e58518/posts?sort=popul...

科陆李明
今天
1
0
20.27 分发系统介绍~ 20.30 expect脚本传递参数

分发系统介绍分发系统-expect讲解(也就是一个分发的脚本)场景:业务越来越大,网站app,后端,编程语言是php,所以就需要配置lamp或者lnmp,最好还需要吧代码上传到服务器上;但是因...

洗香香
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部