自己最近寫了一個網頁多圖上傳的腳本,感覺挺實用的,細節就不要說了,直接貼代碼了~
<head> <style> .pro_img{ margin-left:10px;margin-top:10px;width:300px;height: 300px;background-color: black; --border-radius:999em; overflow:hidden;float:left; --margin:5% 35%;position: relative;} .pro_img img{ position: absolute;left: 50%;top:50%; transform: translate(-50%,-50%);width: 100% } .pro_img {position:relative} .pro_img input{position: absolute;width: 100%;height: 100%;margin:0;opacity:0;z-index: 100;} </style> <script type="text/javascript" src="jquery.min.js"></script> <script> name_pic=1; function t1(o){ //alert(name_pic); if(o==1 || name_pic!=1){ var file="file"+o; var img="img"+o; var hid="hidden"+o; var aa="a"+o; }else{ var file="file"+name_pic; var img="img"+name_pic; var hid="hidden"+name_pic; var aa="a"+name_pic; } var docObj = document.getElementById(file); var imgObjPreview = document.getElementById(img); var hidden=document.getElementById(hid); // alert(hidden); if (docObj.files && docObj.files[0]) { hidden.src=window.URL.createObjectURL(docObj.files[0]); //獲取file文件的路徑 hidden.onload=function(){ var width=hidden.width; var height=hidden.height; var a=document.getElementById(aa); if(width>height){ imgObjPreview.style.cssText='width:100%'; //重寫css樣式 }else{ imgObjPreview.style.cssText='height:100%;width:auto;'; } imgObjPreview.src = window.URL.createObjectURL(docObj.files[0]); imgObjPreview.style.display = 'block'; } }else{ return false; } if(o==name_pic){ var count=$('.pro_img').length; if(count<6){ name_pic++; var pic_div="<a class='pro_img' id='a"+name_pic+"' ><input type='file' id='file"+name_pic+"' accept='image/*' multiple='multiple' name='pic[]' onchange='t1("+name_pic+")'/><img src='upload.jpg' id='img"+name_pic+"'></a><img id='hidden"+name_pic+"' style='display:none;'>"; $('#upload').append(pic_div); } } } </script> </head> <!-- multiple='multiple' --> <form action="http://192.168.0.7/index.php/Home/Pic/upload" enctype="multipart/form-data" method="post"> <div id='upload'> <a class='pro_img' id='a1' > <input type='file' id='file1' accept='image/*' multiple='multiple' name='pic[]' onchange='t1(1)'/> <img src='upload.jpg' id='img1'></a> <img id='hidden1' style='display:none;'> </div> <input type='submit' value="上傳" /> </form>
自己替換一些upload.png這張圖片就能達到自己的需求,如果說圖片點擊沒反應,別忘了加入jquery
以上所述是小編給大家介紹的基於HTML實現多圖上傳預覽功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對網站的支持!