删除文件上的IE11传输未定义或空引用

时间:2017-02-24 18:32:37

标签: javascript jquery file file-upload

我有一个拖放功能来处理Web和本地文件上传。本地文件拖动n' drop在chrome和firefox中运行正常,但是IE给了我以下错误'无法获得' 0'未定义或空引用'。下面是我的JS for drop action。 IE指向我的if语句的开头作为问题的原因。我错过了某种类型的API,或者我必须申报IE才能工作吗?

$("#blightImgBack").on('drop', function(e) {
debugger;
console.log('on drop');
if (e.originalEvent.dataTransfer.items[0].kind === 'file') {
    console.log('local file');
    imageLoaderBack = document.getElementById('blightImgBack');
    imageLoaderBack.addEventListener('change', handleBackImage);
    function handleBackImage(e) {
        console.log('function fired');
        e.preventDefault();
        var reader = new FileReader();
        reader.onload = function (event) {
            console.log('updating src');
            $('#backImgUploader img').fadeOut(200, function() {
                $('#backImgUploader img').attr('src',event.target.result);
                $('#backImgUploader img').fadeIn(300);
            });
        };
        reader.readAsDataURL(e.target.files[0]);
    }
} else if (e.originalEvent.dataTransfer.items[0].kind === 'string') {
    e.preventDefault();
    e.originalEvent.dataTransfer.items[0].getAsString(function (url) {
        $('#backImgUploader img').fadeOut(200, function() {
            $('#backImgUploader img').attr('src', url);
            $('#backImgUploader img').fadeIn(300);
        });
    });
}
});

2 个答案:

答案 0 :(得分:1)

根据下表,即使在Edge上,HTML5拖放IE中的支持也是粗略的。我无法在MSDN上找到有关特定浏览器支持的相关信息,但我的猜测是static class RegexLib { static Regex CreateInstString(){ { return new Regex("YourRegex"); } static Regex CreateUserdataString(){ { return new Regex("YourOtherRegex"); } [..] } 甚至不存在于IE 11上(我认为它只需要一个项目,请阅读github页面下方):

http://caniuse.com/#feat=dragndrop

https://github.com/elsix/angular-jointjs-graph-demo/issues/5

答案 1 :(得分:-1)

我制作了一个CodePen:https://codepen.io/Brianmanden/pen/NpqBwZ

我添加了几行来实现它:

$("#blightImgBack").on("dragover", false);

..和

$("#blightImgBack").on('drop', function(e) {
  e.preventDefault();
  e.stopPropagation();
  ...
}

我在这里找到了我需要的信息:enter link description here

让我们发布您的进度伙伴:)