JavaScript-清除元素

JavaScript-清除元素,javascript,php,html,dom,Javascript,Php,Html,Dom,我有一个脚本,它拍摄了一张即将上传的图片,并添加了图片预览。唯一的问题是,如果再次填写表单,则前一张图像不清晰 放置缩略图图像的位置的id为“缩略图”。有人能帮我添加一两行代码,在添加新的图像预览之前清除div吗 <script> jQuery(function($){ var fileDiv = document.getElementById("upload"); var fileInput = document.getElementById("upload-image"

我有一个脚本,它拍摄了一张即将上传的图片,并添加了图片预览。唯一的问题是,如果再次填写表单,则前一张图像不清晰

放置缩略图图像的位置的id为“缩略图”。有人能帮我添加一两行代码,在添加新的图像预览之前清除div吗

<script> 
    jQuery(function($){
var fileDiv = document.getElementById("upload");
var fileInput = document.getElementById("upload-image");
console.log(fileInput);
fileInput.addEventListener("change",function(e){
  var files = this.files
  showThumbnail(files);
},false)

fileDiv.addEventListener("click",function(e){
  $(fileInput).show().focus().click().hide();
  e.preventDefault();
},false)

fileDiv.addEventListener("dragenter",function(e){
  e.stopPropagation();
  e.preventDefault();
},false);

fileDiv.addEventListener("dragover",function(e){
  e.stopPropagation();
  e.preventDefault();
},false);

fileDiv.addEventListener("drop",function(e){
  e.stopPropagation();
  e.preventDefault();

  var dt = e.dataTransfer;
  var files = dt.files;

  showThumbnail(files);
},false);

function showThumbnail(files){

    // clear the div

  for(var i=0;i<files.length;i++){
    var file = files[i]
    var imageType = /image.*/
    if(!file.type.match(imageType)){
      console.log("Not an Image");
      continue;
    }

    var image = document.createElement("img");
    // image.classList.add("")
    var thumbnail = document.getElementById("thumbnail");
    image.file = file;
    thumbnail.appendChild(image)

    var reader = new FileReader()
    reader.onload = (function(aImg){
      return function(e){
        aImg.src = e.target.result;
      };
    }(image))
    var ret = reader.readAsDataURL(file);
    var canvas = document.createElement("canvas");
    ctx = canvas.getContext("2d");
    image.onload= function(){
      ctx.drawImage(image,100,100)
    }
  }
}
          });
          </script>

jQuery(函数($){
var fileDiv=document.getElementById(“上传”);
var fileInput=document.getElementById(“上传图像”);
log(fileInput);
fileInput.addEventListener(“更改”,函数(e){
var files=this.files
显示缩略图(文件);
},错)
fileDiv.addEventListener(“单击”,函数(e){
$(fileInput).show().focus().click().hide();
e、 预防默认值();
},错)
fileDiv.addEventListener(“dragenter”,函数(e){
e、 停止传播();
e、 预防默认值();
},假);
fileDiv.addEventListener(“dragover”,函数(e){
e、 停止传播();
e、 预防默认值();
},假);
fileDiv.addEventListener(“删除”,函数(e){
e、 停止传播();
e、 预防默认值();
var dt=数据传输;
var files=dt.files;
显示缩略图(文件);
},假);
函数显示缩略图(文件){
//清除分区
对于(var i=0;i
这将清除缩略图的内容。之后,您可以像在代码中那样附加图像

编辑:您应该真正使用jQuery,以避免跨浏览器问题:

$('#thumbnail').empty();

这也会清除缩略图元素,但会将跨浏览器问题处理延迟到jQuery。

我应该将其放在哪里?我在//清除div注释之后添加了它,但它破坏了图像预览。另外,第二行“编辑”工作得很好!谢谢!
$('#thumbnail').empty();