为什么plupload库在IE8中不起作用

江山堂

在我的应用程序中使用plupload库。我可以单击“选择文件”按钮,并使用Chrome和Firefox添加文件,但是使用IE8,当我单击“选择文件”按钮时,没有任何反应。

这是我的JS实现

    var url = webAPIHost.toLowerCase().replace("api/", "") + 'FileUpload/FileHandler';
    var total_uploads = 0;
    var uploaded = 0;

     uploaderExpense = new plupload.Uploader({
            runtimes: 'html5,html4',
            browse_button: 'pickfiles', // you can pass in id...
            container: document.getElementById('fileupload'), // ... or DOM Element itself
            url: url,
            flash_swf_url: '../js/Moxie.swf',
            silverlight_xap_url: '../js/Moxie.xap',
            multipart_params: {
                "expenseDetailID": "",
                "fileID": ""
            },
            drop_element: 'dropzone',
            filters: {
                max_file_size: '10mb',
                mime_types: [
                    {title: "Image files",extensions: "jpg,gif,png"}, 
                    {title: "Zip files",extensions: "zip"}
                ]
            },

            init: {
                PostInit: function() {
                    document.getElementById('filelist').innerHTML = '';
                },

                FilesAdded: function(up, files) {
                    plupload.each(files, function(file) {
                        var filename = "";

                        if ($.browser.msie && parseInt($.browser.version, 10) <= 9) {
                            filename = file.name;
                        }

                        document.getElementById('filelist').innerHTML += '<div id="' + file.id + '" class="uploadListItem"><span class="bf-delete-image" id="del' + file.id + '">X</span>' + filename + '<b></b></div>';

                        if (!$.browser.msie || parseInt($.browser.version, 10) >= 10) {
                            for (var i = 0; i < files.length; i++) {
                                showImagePreview(files[i]);
                            }
                        }

                    });
                    $('#isAttachedToDocWrap').hide();
                },
                FilesRemoved: function(up, file) {
                    if (up.files.length == 0) {
                        $('#isAttachedToDocWrap').show();
                    }
                },
                UploadProgress: function(up, file) {
                    document.getElementById(file.id).getElementsByTagName('b')[0].innerHTML = '<span>' + file.percent + "%</span>";
                },

                Error: function(up, err) {
                }
            }
        });

这是HTML部分

<div id="filelist"></div>
<div id="fileupload" style="position: relative;">
  <input type="button" id="pickfiles" value="Choose File" style="width: 100px; position: relative; z-index: 1;">

  <div id="html5_18n9h5j961i36ravev1b7t1vm23_container" class="moxie-shim moxie-shim-html5" style="position: absolute; top: 0px; left: 0px; width: 0px; height: 0px; overflow: hidden; z-index: 0;"><input id="html5_18n9h5j961i36ravev1b7t1vm23" type="file" style="font-size: 999px; opacity: 0; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%;" multiple="" accept="image/jpeg,image/gif,image/png,application/zip"></div>
</div>

如您所见,“ plupload库”创建了div html5容器,这意味着代码已经存在,但是IE不会显示它或打开文件对话框。不知道为什么

Uploader库中有一个示例页面,可在IE上正常运行。这意味着实施不正确

我不能把手放在这里出了什么问题。

江山堂

当我更改运行时以支持flash和silverlight时,就像这样runtimes: 'html5,flash,silverlight,html4'这有点奏效。我的意思是,在对话框打开之前,我必须多次单击“选择文件”按钮。它的反应非常非常缓慢。自从我在本地主机上工作以来,这是暂时的解决方案。

在测试时,我遇到了一个安全错误。我在这里找到了有关IE8和IE9 plupload的运行时的良好信息

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么此脚本在IE8中不起作用?

来自分类Dev

为什么手风琴在IE8中不起作用?

来自分类Dev

各种calc()polyfill库在IE8中不起作用

来自分类Dev

Webshims库:HTML5 Web表单验证在IE8中不起作用

来自分类Dev

各种calc()polyfill库在IE8中不起作用

来自分类Dev

querySelectorAll在IE8中不起作用?

来自分类Dev

Ajax调用在IE8中不起作用

来自分类Dev

JavaScript代码在IE8中不起作用

来自分类Dev

javascript代码在IE8中不起作用

来自分类Dev

click()jQuery在IE8中不起作用

来自分类Dev

CSS悬停在IE8中不起作用

来自分类Dev

.each()在IE8中不起作用

来自分类Dev

Bootstrap 3在IE8中不起作用

来自分类Dev

折页效果在IE8中不起作用

来自分类Dev

getElementById()。getElementsByTagName()在IE8中不起作用

来自分类Dev

PouchDB在IE8中不起作用

来自分类Dev

document.attachEvent()在IE8中不起作用

来自分类Dev

代码在IE8中不起作用

来自分类Dev

Bootstrap 3在IE8中不起作用

来自分类Dev

jQuery CSS转换在IE8中不起作用?

来自分类Dev

导航在IE8中不起作用

来自分类Dev

谷歌地图在IE8中不起作用(wordpress)

来自分类Dev

setInterval 0在IE8中不起作用

来自分类Dev

PIE.htc在IE8中不起作用

来自分类Dev

img标签在ie8中不起作用

来自分类Dev

占位符值在IE8中不起作用

来自分类Dev

JavaScript queryselector方法在IE8中不起作用

来自分类Dev

Foundation utils在ie8中不起作用

来自分类Dev

-ms-flexbox在IE8中不起作用