日期:2014-05-17  浏览次数:20581 次

Uploadify上传预览的疑惑
最近修改了一下Uploadify,实现了多文件上传的功能,现在有个新功能就是上传前预览
查了很多资料都说是在onComplete事件中触发,可是我试过了.
这个事件是上传成功后,预览指的是我选中图片到了input file中后.
相应的imag src开始发生改变.请前辈们赐教,不胜感激.




------解决方案--------------------

上传前的图片预览功能直接用JS脚本实现就可以,给你一个写的demo的实例,直接复制粘贴:
<html>
<head>
<title>js图片上传预览</title>
<script>
function PreviewImage(imgFile)
{
    var filextension=imgFile.value.substring(imgFile.value.lastIndexOf("."),imgFile.value.length);
    filextension=filextension.toLowerCase();
    if ((filextension!='.jpg')&&(filextension!='.gif')&&(filextension!='.jpeg')&&(filextension!='.png')&&(filextension!='.bmp'))
    {
        alert("对不起,系统仅支持标准格式的照片,请您调整格式后重新上传,谢谢 !");
        imgFile.focus();
    }
    else
    {
        var path;
        if(document.all)//IE
        {
            imgFile.select();
            path = document.selection.createRange().text;
            document.getElementById("imgPreview").innerHTML="";
            document.getElementById("imgPreview").style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true',sizingMethod='scale',src=\"" + path + "\")";//使用滤镜效果      
        }
        else//FF
        {
            path=window.URL.createObjectURL(imgFile.files[0]);// FF 7.0以上
            //path = imgFile.files[0].getAsDataURL();// FF 3.0
            document.getElementById("imgPreview").innerHTML = "<img id='img1' width='120px' height='100px' src='"+path+"'/>";
            //document.getElementById("img1").src = path;
        }
    }
}
</script>
</head>
<body>
<input type="file" onchange='PreviewImage(this)' />
<br />
<div id="imgPreview" style='width:120px; height:100px;'>
    <img id="img1" src="" width="120" height="100" />
</div>
</body>
</html>