1. 程式人生 > >上傳圖片實時顯示 兼容 ie11

上傳圖片實時顯示 兼容 ie11

IT chan nsf btn obj files text this BE

html:

<style type="text/css">
  .imgOnloadWrap{ width: 150px; height: 200px;}
  #img1{ width: 150px; height: 200px;}
</style>

<div class="imgOnloadWrap">

  <img id="img1" name="fileimage" src="<c:url value=‘/${bean.fileUrl }‘ />" />

</div>

<input type="file" style="width:10px;" size="1" class="btn_add_pic" id="file" name="file" onchange="upImg(this)" />

js:

  

function upImg(obj){
  var $file = obj;

  註:這種方式ie11不兼容 var imgFile = obj.files[0];

  替換成:var fileObj = $file[0];
  var fileObj = $file[0];
  var windowURL = window.URL || window.webkitURL;
  var dataURL;
  var $img = $("#img1");
  if(fileObj && fileObj.files && fileObj.files[0]){
    dataURL = windowURL.createObjectURL(fileObj.files[0]);
    $img.attr(‘src‘,dataURL);
  }else{
    $(‘.imgOnloadWrap img‘).remove();
    var htmlStr = ‘‘;
    htmlStr += ‘<img id="img1" src=""/>‘;
    $(‘.imgOnloadWrap‘).append(htmlStr);
    dataURL = $file.value;
    var imgObj = document.getElementById("img1");
    imgObj.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
    imgObj.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = dataURL;

  }
}

上傳圖片實時顯示 兼容 ie11