JavaScript 图片上传预览删除功能允许用户在网页上选择图片文件,实时预览所选图片,并在需要时删除预览的图片。这一功能通常涉及以下几个步骤:
<input type="file">
元素选择图片文件。以下是一个简单的 JavaScript 图片上传预览删除功能的实现:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>图片上传预览删除</title>
<style>
.preview-container {
display: flex;
flex-wrap: wrap;
}
.preview-image {
max-width: 100px;
max-height: 100px;
margin: 5px;
}
.remove-btn {
cursor: pointer;
margin-left: 5px;
}
</style>
</head>
<body>
<input type="file" id="fileInput" multiple>
<div class="preview-container" id="previewContainer"></div>
<script>
document.getElementById('fileInput').addEventListener('change', function(event) {
const files = event.target.files;
const previewContainer = document.getElementById('previewContainer');
previewContainer.innerHTML = ''; // Clear previous previews
for (let i = 0; i < files.length; i++) {
const file = files[i];
const reader = new FileReader();
reader.onload = function(e) {
const img = document.createElement('img');
img.src = e.target.result;
img.classList.add('preview-image');
const removeBtn = document.createElement('span');
removeBtn.textContent = 'X';
removeBtn.classList.add('remove-btn');
removeBtn.onclick = function() {
previewContainer.removeChild(img.parentNode);
};
const container = document.createElement('div');
container.appendChild(img);
container.appendChild(removeBtn);
previewContainer.appendChild(container);
};
reader.readAsDataURL(file);
}
});
</script>
</body>
</html>
问题1:图片预览加载缓慢
问题2:浏览器兼容性问题
问题3:删除功能失效
通过上述方法,可以有效实现并维护一个稳定可靠的图片上传预览删除功能。
领取专属 10元无门槛券
手把手带您无忧上云