美文网首页
JS 上传图片实时预览

JS 上传图片实时预览

作者: peterz博客 | 来源:发表于2018-08-23 19:10 被阅读25次

html 代码

表单form 不要忘了加enctype="multipart/form-data"

<li>上传头像:
    <input type="file" name="files" onchange="preview(this,'img')">
    <div id="img"></div>
</li>

js 代码

<script type="text/javascript">
    function preview(file,img){  
        var prevDiv = document.getElementById(img);  
        if (file.files && file.files[0]){     
                //alert(file.files[0].name); //名称  
                //alert(file.files[0].size);  //大小 字节 
                //alert(file.files[0].type);//类型 
            var size = file.files[0].size;
            if(size > 2 * 1024*1024){
                alert("上传大小不符合");
                return false;
            }
             // 获取文件名 包含后缀  
             var src = file.files[0].name;  
             // 获取文件后缀                                                      
             var type=(src.substr(src.lastIndexOf("."))).toLowerCase(); 
            // 判断文件类型                                   
            if(type != ".jpg" && type != ".gif" && type !=".jpeg" && type != ".png"){           
                alert("您上传图片的类型不符合(.jpg|.jpeg|.gif|.png)!");
                return false;
            }
              
            var reader = new FileReader(); 
            reader.readAsDataURL(file.files[0]);            //将文件以Data URL形式读入页面
            reader.onload = function(evt){                  //onload 成功读取 
                //显示文件
                prevDiv.innerHTML = '<img src="' + evt.srcElement.result + '" style="max-width:200px;" />';             
            }  
        }  
     }  
 </script>

image.png

相关文章

网友评论

      本文标题:JS 上传图片实时预览

      本文链接:https://www.haomeiwen.com/subject/sdwmiftx.html