html5实现图片上传预览

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_21383977/article/details/82456143
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<style type="text/css">
			#test-image-preview{
				height: 500px;
				width: 80%;
			}
		</style>
	</head>
	<body>
		<input type="file" name="test-image-file" id="test-image-file" value="" multiple="multiple"/>
		<div id="test-file-info"></div>
		<div id="test-image-preview"></div>
		<script>
		   var
			    fileInput = document.getElementById('test-image-file'),
			    info = document.getElementById('test-file-info'),
			    preview = document.getElementById('test-image-preview');
			// 监听change事件:
			fileInput.addEventListener('change', function () {
			    // 清除背景图片:
			    preview.style.backgroundImage = '';
			    // 检查文件是否选择:
			    if (!fileInput.value) {
			        info.innerHTML = '没有选择文件';
			        return;
			    }
			    // 获取File引用:
			    var file = fileInput.files[0];
			    // 获取File信息:
			    info.innerHTML = '文件: ' + file.name + '<br>' +
			                     '大小: ' + file.size + '<br>' +
			                     '修改: ' + file.lastModifiedDate;
			    if (file.type !== 'image/jpeg' && file.type !== 'image/png' && file.type !== 'image/gif') {
			        alert('不是有效的图片文件!');
			        return;
			    }
			    // 读取文件:
			    var reader = new FileReader();
			    reader.onload = function(e) {
			        var
			            data = e.target.result; // 'data:image/jpeg;base64,/9j/4AAQSk...(base64编码)...'            
			        preview.style.backgroundImage = 'url(' + data + ')';
			    };
			    // 以DataURL的形式读取文件:
			    reader.readAsDataURL(file);
			});
		</script>
	</body>
	<!--<script src="js/dtm.js" type="text/javascript" charset="utf-8"></script>-->
</html>

猜你喜欢

转载自blog.csdn.net/qq_21383977/article/details/82456143