這篇文章主要介紹了html5以及jQuery實(shí)現(xiàn)本地圖片上傳前的預(yù)覽代碼實(shí)例講解,圖文代碼實(shí)例講解的很清晰,有感興趣的同學(xué)可以研究下
html5以及jQuery實(shí)現(xiàn)本地圖片上傳前的預(yù)覽,效果類似如下:
選擇圖片前的頁面:

選擇圖片之后的預(yù)覽效果:

下面直接上代碼(只是最簡(jiǎn)單的實(shí)現(xiàn)代碼,css樣式?jīng)]有復(fù)制,自己隨意發(fā)揮)
<!DOCTYPE html>
<html>
<head>
<title>HTML5上傳圖片預(yù)覽</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="https://www.jb51.net/ajaxjs/jquery-1.6.2.min.js"></script>
</head>
<body>
...
<form name="form0" id="form0" >
<!-- 這里特別說一下這個(gè) multiple="multiple" 添加上這個(gè)之后可以一次選擇多個(gè)文件進(jìn)行上傳,是 html5 的新屬性-->
<input type="file" name="file0" id="file0" multiple="multiple" /><br><img src="" id="img0" >
</form>
...
<script>
$("#file0").change(function(){
// getObjectURL是自定義的函數(shù),見下面
// this.files[0]代表的是選擇的文件資源的第一個(gè),因?yàn)樯厦鎸懥?nbsp;multiple="multiple" 就表示上傳文件可能不止一個(gè)
// ,但是這里只讀取第一個(gè)
var objUrl = getObjectURL(this.files[0]) ;
// 這句代碼沒什么作用,刪掉也可以
// console.log("objUrl = "+objUrl) ;
if (objUrl) {
// 在這里修改圖片的地址屬性
$("#img0").attr("src", objUrl) ;
}
}) ;
//建立一個(gè)可存取到該file的url
function getObjectURL(file) {
var url = null ;
// 下面函數(shù)執(zhí)行的效果是一樣的,只是需要針對(duì)不同的瀏覽器執(zhí)行不同的 js 函數(shù)而已
if (window.createObjectURL!=undefined) { // basic
url = window.createObjectURL(file) ;
} else if (window.URL!=undefined) { // mozilla(firefox)
url = window.URL.createObjectURL(file) ;
} else if (window.webkitURL!=undefined) { // webkit or chrome
url = window.webkitURL.createObjectURL(file) ;
}
return url ;
}
</script>
</body>
</html>





