html批量上傳圖片
『壹』 HTML5 圖片上傳, 調整圖像大小和裁剪圖像
HTML5 提供了強大的文件處理功能,其中包括圖片上傳、調整大小與裁剪。本文將詳細介紹這些功能的實現方法。
HTML5 引入了 File API,允許網頁應用直接訪問用戶計算機上的文件。實現文件上傳有多種方式,例如使用 `` 元素,並添加 `change` 事件監聽或直接拖拽文件至瀏覽器窗口。`` 的 `name` 屬性和 `multiple` 屬性分別用於識別文件數組和允許用戶同時選擇多個文件。
接下來,讓我們編寫代碼。HTML 部分使用 `` 表單,並在其中添加 `multiple` 屬性,以便用戶選擇多個文件。javaScript 代碼可以用於處理文件選擇事件,獲取文件信息。
為了驗證瀏覽器兼容性,我們可以通過檢測是否支持 File API 來實現。如果瀏覽器不支持,將顯示提示信息。
對於具有拖拽功能的瀏覽器,使用 `input type="file"` 可作為拖拽目標,實現拖放文件上傳。
為了在上傳之前預覽圖片,我們可以通過 HTML 結構展示圖片,並編寫 JavaScript 代碼來實現預覽功能。
在上傳圖片前調整圖片尺寸是一個實用的功能。這可以通過 canvas 元素與 JavaScript 實現,實現動態調整圖片大小,然後使用 XMLHttpRequest 將調整後的圖片上傳至伺服器。
伺服器端保存圖片的代碼則依賴於特定的後端技術實現,但基本流程是接收上傳請求,讀取圖片數據,然後保存至伺服器。
掌握這些功能後,你可以在自己的項目中應用它們,以提升用戶體驗和功能實現。
『貳』 我需要一個js或者jquery能批量上傳圖片+預覽的功能。急~~~急~~~急~~
WebUploader項目,符合你的要求。
//文件上傳過程中創建進度條實時顯示。
uploader.on('uploadProgress',function(file,percentage){
var$li=$('#'+file.id),
$percent=$li.find('.progressspan');
//避免重復創建
if(!$percent.length){
$percent=$('<pclass="progress"><span></span></p>')
.appendTo($li)
.find('span');
}
$percent.css('width',percentage*100+'%');
});
//文件上傳成功,給item添加成功class,用樣式標記上傳成功。
uploader.on('uploadSuccess',function(file){
$('#'+file.id).addClass('upload-state-done');
});
//文件上傳失敗,顯示上傳出錯。
uploader.on('uploadError',function(file){
var$li=$('#'+file.id),
$error=$li.find('div.error');
//避免重復創建
if(!$error.length){
$error=$('<divclass="error"></div>').appendTo($li);
}
$error.text('上傳失敗');
});
//完成上傳完了,成功或者失敗,先刪除進度條。
uploader.on('uploadComplete',function(file){
$('#'+file.id).find('.progress').remove();
});
更多細節,請查看js源碼。
『叄』 js上傳圖片壓縮-如何利用JS或者CSS樣式來自動調整圖片大小
如何在前端用js進行多圖片上傳產品提了一個需求,要求在一個html中實現多行多圖片上傳,原型圖如下:
2.1:html
html頁面由前端實現,此處增加<ul><li></li></ul>是為了配合圖片單擊放大圖片功能的實現
<ul_d="ul_other">
<li><inputtype="file"id="file_other"class="file_input"onchange="add_file_image('other')"></li>
</ul>
2.2:js
varimgSrc_other=[];
varimgFile_other=[];
functionadd_file_image(id){
varfileList=("file_"+id).files;//js獲取文件對象
if(verificationFile(fileList[0])){
for(vari=0;i
varimgSrcI=getObjectURL(fileList[i]);
if(id=="other"){
imgSrc_(imgSrcI);
if(fileList[i].size/1024>100){//大於100kb,進行壓縮上傳
fileResizetoFile(fileList[i],0.6,function(res){
imgFile_(res);
})
}else{
imgFile_(res);
}
}
addNewContent(id);
}
}
//新增圖片
functionaddNewContent(obj){
//刪除原先
$("#ul_"+obj).html("");
//判斷循環新增
var_ext="";
if(obj=="other"){
for(vara=0;a<imgSrc_;a++){
text+='<li><inputtype="file"id="file_other"class="file_input"onchange="add_file_image('other')"></li>'
}
}else{
('臟數據');
}
varoldBox="<li><divclass="filediv"><span>+</span> "+
"<inputtype="file"id="file_"+obj+""_lass="file_input"onchange="add_file_image('"+obj+"')"> "+
"</div></li>";
$("#ul_"+obj).html(text+localText);
}
使用formData上傳
varform=("form_addArchive");//表單id
varformData=newFormData(form);
$.each(imgFile_other,function(i,file){
('imgFileOther',file);
});
$.ajax({
url:url,
type:'POST',
async:true,
cache:false,
contentType:false,
processData:false,
dataType:'json',
data:formData,
xhrFields:{
withCredentials:true
},
success:function(data){
}
},
error:function(XMLHttpRequest,textStatus,errorThrown){
}
})
後台使用@RequestParam(value="imgFileOther",required=false)List<MultipartFile>imgFileOther,接受
//獲取圖片url以便顯示
//文件格式驗證
//圖片壓縮
js壓縮圖片最低能壓縮多百分之多少js最低能壓縮百分之一,最大可放大至原來的5倍2.????最小可縮放至原來的百分之10第二種保持圖片寬度長度不變改變圖片質量,但不能用於放大圖片最小可壓縮至原圖的百分之一
如何利用JS或者CSS樣式來自動調整圖片大小js版和css版自動按比例調整圖片大小方法,分別如下:
<title>javascript圖片大小處理函數</title>
<script_anguage=Javascript>
var_roMaxHeight=150;
var_roMaxWidth=110;
function_roDownImage(ImgD){
___var_mage=new_mage();
___=;
___if(>0&&>0){
___var_ate=(proMaxWidth/<_roMaxHeight/)?proMaxWidth/:proMaxHeight/;
__if(rate<=1){_
___=*rate;
___=*rate;
__}
__else_
_____________=;
_____________=;
_________}
___}
}
</script>
</head>
<body>
<img_rc=""_order=0_idth="150"_eight="110"_onload=proDownImage(this);_/>
<img_rc=""_order=0_idth="150"_eight="110"_nload=proDownImage(this);_/>
</body>
純css的防止圖片撐破頁面的代碼,圖片會自動按比例縮小:
<style_ype="text/css">
.content-width_MARGIN:_uto;WIDTH:600px;}
.content-width_mg{MAX-WIDTH:100%!important;HEIGHT:_uto!important;width:expression(>600?"600px":)!important;}
</style>
<div_lass="content-width">
_<p><img_rc="/down/js/images/"/></p>
_<p><img_rc="/down/js/images/"/></p>
</div>
『肆』 input file用了multiple屬性 而且選擇了多張圖片 php該怎麼上傳
其實就那兩個函數
is_uploaded_file()和move_uploaded_file()
是循環上傳的。你列印下$_FILES這個超全局數組就明白了。下面我的測試代碼上傳圖片的:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題</title>
</head>
<body>
<form action="test.php" method="post" enctype="multipart/form-data">
<input type="file" id="f" name="images[]" multiple="true" style="border:1px solid red" />
<input type="submit" value="提交" />
</form>
</body>
</html>
<?php
$path=$_SERVER['DOCUMENT_ROOT'].'test2/';
if(!empty($_FILES)){
echo "aaaa";
if(is_uploaded_file($_FILES['images']['tmp_name'][0])){
echo "1111";
exit;
}
foreach($_FILES['images']['tmp_name'] as $k=>$v){
if(is_uploaded_file($_FILES['images']['tmp_name'][$k])){
$save=$path.$_FILES['images']['name'][$k];
echo $save."<br>";
if(move_uploaded_file($_FILES['images']['tmp_name'][$k],$save)){
echo "上傳成功!";
}
}
}
echo "<pre>";
print_r($_FILES);
echo "</pre>";
}
?>
『伍』 html設置文件上傳類型,如何設置在選擇文件的時候只能選圖片
可以設置一下html中的accept屬性以實現上傳文件類型的篩選,accept 屬性只能與 <input type="file"> 配合使用。它規定能夠通過文件上傳進行提交的文件類型。
工具原料:編輯器、瀏覽器
1、設置一個文件上傳選項,刪選一下只能上傳圖片或者詳細的限制只能上傳圖片的某些格式,代碼如下:
<!DOCTYPEhtml>
<html>
<body>
<formaction="demo_form.asp">
<inputtype="file"name="pic"accept="image/*">
<inputtype="submit">
</form>
<p><strong>注釋:</strong>InternetExplorer9以及更早的版本不支持input標簽的accept屬性。</p>
<p><strong>注釋:</strong>鑒於安全考慮,該例不允許您上傳文件。</p>
</body>
</html>
2、運行的結果是只能上傳圖片不能上傳其他的文件,在彈出的上傳選擇對話框中也會值顯示圖片,如下圖:
『陸』 在html頁面裡面製作一個上傳圖片的區域,就是點那個區域,就能上傳照片,這個html代碼應該怎麼寫
你好,html上傳文件的代碼如下:
<inputtype="file"name="fileUpload"/>
<inputtype="submit"value="上傳文件"/>
至於你要說的有個區域顯示圖片的,這個需要配合前端開發才可以,單純的html代碼是做不到的,謝謝。
『柒』 html圖片怎麼上傳
和網頁傳送方式一樣 比如你的html文件放在桌面,你的圖片新建文件夾img 之後做完之後看一下路徑是否正確,有的是需要你修改路徑的,桌面添加默認為fttp:c\....等路徑 把前面的刪除 只留有文件夾以及文件名