JS+HTML5實(shí)現(xiàn)上傳圖片預(yù)覽效果完整實(shí)例【測試可用】
本文實(shí)例講述了JS+HTML5實(shí)現(xiàn)上傳圖片預(yù)覽效果。分享給大家供大家參考,具體如下:
在項(xiàng)目中遇到用input標(biāo)簽file類型的文件上傳,想實(shí)在上傳之前進(jìn)行圖片的預(yù)覽功能;之前的做的一個(gè)解決方案是文件先上傳上去然后返回地址再顯示在頁面上,這樣就不太好,因?yàn)橛脩艋拘畔⒖赡懿]有保存,但是頭像卻已經(jīng)改變,如果在需要改變就導(dǎo)致了多余圖片的保存服務(wù)器。
在網(wǎng)上找了下解決方案,如下所示:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>html5 圖片上傳預(yù)覽</title>
<style>
#preview {
width: 300px;
height: 300px;
overflow: hidden;
}
#preview img {
width: 100%;
height: 100%;
}
</style>
<script src="jquery-1.7.2.min.js"></script>
<script type="text/javascript">
function preview1(file) {
var img = new Image(), url = img.src = URL.createObjectURL(file)
var $img = $(img)
img.onload = function() {
URL.revokeObjectURL(url)
$('#preview').empty().append($img)
}
}
function preview2(file) {
var reader = new FileReader()
reader.onload = function(e) {
var $img = $('<img>').attr("src", e.target.result)
$('#preview').empty().append($img)
}
reader.readAsDataURL(file)
}
$(function() {
$('[type=file]').change(function(e) {
var file = e.target.files[0]
preview1(file)
})
})
</script>
</head>
<body>
<form enctype="multipart/form-data" action="" method="post">
<input type="file" name="imageUpload"/>
<div id="preview" style="width: 300px;height:300px;border:1px solid gray;"></div>
</form>
</body>
</html>
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript+HTML5特效與技巧匯總》、《JavaScript圖片操作技巧大全》、《JavaScript圖形繪制技巧總結(jié)》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對大家JavaScript程序設(shè)計(jì)有所幫助。
- js HTML5多圖片上傳及預(yù)覽實(shí)例解析(不含前端的文件分割)
- HTML5 JS壓縮圖片并獲取圖片BASE64編碼上傳
- 基于HTML5+JS實(shí)現(xiàn)本地圖片裁剪并上傳功能
- JS HTML5拖拽上傳圖片預(yù)覽
- JS+html5實(shí)現(xiàn)異步上傳圖片顯示上傳文件進(jìn)度條功能示例
- 手機(jī)端 HTML5使用photoswipe.js仿微信朋友圈圖片放大效果
- js+html5繪制圖片到canvas的方法
- js HTML5 canvas繪制圖片的方法
- JavaScript+html5 canvas實(shí)現(xiàn)圖片破碎重組動(dòng)畫特效
- JS+HTML5實(shí)現(xiàn)圖片在線預(yù)覽功能
- javascript實(shí)現(xiàn)移動(dòng)端 HTML5 圖片上傳預(yù)覽和壓縮功能示例
相關(guān)文章
vue-router路由懶加載的實(shí)現(xiàn)(解決vue項(xiàng)目首次加載慢)
這篇文章主要介紹了vue-router路由懶加載的實(shí)現(xiàn)(解決vue項(xiàng)目首次加載慢),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-08-08
前端js實(shí)現(xiàn)文件的斷點(diǎn)續(xù)傳 后端PHP文件接收
這篇文章主要為大家詳細(xì)介紹了斷點(diǎn)續(xù)傳的簡單例子,前端文件提交,后端PHP文件接收,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10
JS中setTimeout的巧妙用法前端函數(shù)節(jié)流
這篇文章主要介紹了JS中setTimeout的巧妙用法前端函數(shù)節(jié)流 的相關(guān)資料,需要的朋友可以參考下2016-03-03
js性能優(yōu)化 如何更快速加載你的JavaScript頁面
JavaScript現(xiàn)在極其重要。一些網(wǎng)站使用JavaScript來增添魅力;如今的許多Web應(yīng)用程序依賴它;其中一些甚至是完全用JavaScript編寫而成的。我在本文中將指出一些重要的規(guī)則,介紹如何使用你的JavaScript、使用哪些工具以及你將從中得到什么好處2012-03-03
javascript創(chuàng)建數(shù)組的最簡代碼
2008-02-02
JS面向?qū)ο缶幊袒A(chǔ)篇(一) 對象和構(gòu)造函數(shù)實(shí)例詳解
這篇文章主要介紹了JS面向?qū)ο缶幊虒ο蠛蜆?gòu)造函數(shù),結(jié)合實(shí)例形式詳細(xì)分析了JS面向?qū)ο缶幊虒ο蠛蜆?gòu)造函數(shù)具體概念、原理、使用方法及操作注意事項(xiàng),需要的朋友可以參考下2020-03-03
three.js實(shí)現(xiàn)3D影院的原理的代碼分析
本篇文章主要給大家講解了如何通過three.js實(shí)現(xiàn)3D影院的功能以及原理分析,需要的朋友參考一下吧。2017-12-12
JavaScript高級程序設(shè)計(jì) 讀書筆記之八 Function類及閉包
Function類及閉包,學(xué)習(xí)js的朋友可以參考下2012-02-02
如何通過非數(shù)字與字符的方式實(shí)現(xiàn)PHP WebShell詳解
這篇文章主要給大家介紹了關(guān)于如何通過非數(shù)字與字符的方式實(shí)現(xiàn)PHP WebShell的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。2017-07-07

