File API,它们停止工作的原因是因为两者现在都实现了 html5 文件 api。
这是api 的 html5 演示。
以下是相关脚本,以防他们删除演示:
<script>
var holder = document.getElementById('holder'),
state = document.getElementById('status');
if (typeof window.FileReader === 'undefined') {
state.className = 'fail';
} else {
state.className = 'success';
state.innerHTML = 'File API & FileReader available';
}
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) {
console.log(event.target);
holder.style.background = 'url(' + event.target.result + ') no-repeat center';
};
console.log(file);
reader.readAsDataURL(file);
return false;
};
</script>
注意:如果您需要在 chrome 中访问本地计算机上的文件,则需要使用此开关运行程序--allow-file-access-from-files
(使用文件输入而不实际加载到服务器,否则会出现 xhr 跨域错误) .
我不知道Firefox中的等价物。