从IE9中无法使用的计算机上传图像

时间:2012-09-03 10:40:10

标签: javascript jquery internet-explorer

我有一个特定的代码,它在Google Chrome上工作正常,但在IE9上却没有。 我有一个div,我将图像从计算机拖到div,它加载在谷歌Chrome上,但不加载IE9。请帮忙..!

<div id="holder" ></div> 
    <p id="status">
        Please Drag your image from computer and paste it on the div to view it.
    </p>
</div>

jQuery的:

var holder = document.getElementById('holder'), 
state = document.getElementById('status'); 

if (typeof window.FileReader === 'undefined') { 
    state.className = 'fail'; 
} else { 
   state.className = 'success'; 
   state.innerHTML = 'Please Drag your image from computer and paste it on the div to view it.'; 
} 

holder.ondragover = function () { 
    this.className = 'hover'; 
    return false; 
}; 

holder.ondragend = function () { 
    this.className = ''; 
    return false; 
}; 

holder.ondrop = function (e) { 
    this.className = ''; 
    e.preventDefault();    
    var file = e.dataTransfer.files[0], 
    reader = new FileReader(); 
    reader.onload = function (event) { 
        alert(event); 
        console.log(event.target); 
        holder.style.background = 'url(' + event.target.result + ') no-repeat center'; 
    }; 

    console.log(file); 
    reader.readAsDataURL(file);
    return false; 
};

可能是什么问题?

2 个答案:

答案 0 :(得分:3)

IE9浏览器不支持HTML5 File API

IE9中的

UPD:和HTML5 Drag and Drop API支持仅是部分支持,不支持您尝试的部分(dataTransfer.files)。 Here您可以看到哪些浏览器支持拖放HTML5 API

答案 1 :(得分:1)

我担心IE10版本2010.3之前不支持它 检查您当前正在使用的版本