我正在使用javascript FileReader类在将图像上传到服务器之前预览图像。一切似乎都适用于Firefox和Chrome,但由于某些原因它似乎不适用于IE。
以下是我的代码。 (这是针对Cakephp框架的)
我们有办法解决这个问题,所以它也可以在IE中运行吗?
<script type="text/javascript">
function imageBack(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('#uploadBackImage').attr('src', e.target.result);
$('#cardbackImagePath').attr('value',e.target.result);
}
reader.readAsDataURL(input.files[0]);
}
}
</script>
<input type="file" name="data[Card][uploadBack]" class="file" onchange="imageBack(this);" width="240" height="150" id="CardUploadBack">
答案 0 :(得分:12)
在IE中你应该使用ActiveXObject因为IE不是浏览器
答案 1 :(得分:1)
FileReader是JavaScript的一个相对较新的补充,因为Internet Explorer已经过时,它还没有支持它。 Internet Explorer 7/8根本不支持它,IE9仅部分支持离线存储。但是,Internet Explorer 10将获得早期支持。我只想在那里贴一条消息让IE用户告诉他们(礼貌地,当然)来获得一个真正的浏览器。