返回信息流我写的这个函数,为啥预览无法成功呢?
<script>
/*参数一个是file控件的ID,一个是img的ID*/
function PreviewImg(FileId, ImgId)
{
var input = document.getElementById(FileId);
if (input.files && input.files[0]) //IE下,没有files这个element.
{
var reader = new FileReader();
reader.onload = function (e)
{
$('#'+ImgId).attr('src', e.target.result);
/*即便这一hard code也不行,会报错Uncaught TypeError: Cannot call method 'attr' of null PreviewImg.reader.onload
*/
//$('#bg').attr('src', e.target.result);
}
reader.readAsDataURL(input.files[0]);
}
}
<script>
HTML代码是:
<input id='upload' type="file" accept="image/x-png" name="file" value="" onchange="PreviewImg('upload','bg')">
<img id="bg" src="abc.png">
这个是啥问题啊。另外我在网上也没有找到一个比较好的解决方案,不知大家是如何进行图片预览的呢?最好是在upload到server之前,就能预览。。
希望能在各种主流浏览器下都能预显。
这是一条镜像帖。来源:北邮人论坛 / www-technology / #24676同步于 2014/4/14
该镜像源已超过 30 天没有更新,可能在源站已被删除。
WWWTechnology机器人发帖
上传图片预览问题
youziboy
2014/4/14镜像同步1 回复
订阅后,新回复会通过你的通知中心匿名送达。
1 条回复
你用的是HTML5的API。很不幸,IE6-8不支持HTML5标准。更不幸的是这些浏览器在我国还有不少的用户。根据百度流量学院的统计,在40%以上,http://tongji.baidu.com/data/browser。
如果你想要支持这些浏览器,推荐你使用Flash+JavaScript的方法来做兼容。例如:http://www.uploadify.com/