js多图展示的代码

 /*下面用于多图片上传预览功能
 width:预览图片的宽度
 height:预览图片的高度
 docId:file框的id
 ddId:预览框id*/
 function setImagePreviews(width,height,docId,ddId) {
      var docObj = document.getElementById(docId);
      var dd = document.getElementById(ddId);
      dd.innerHTML = "";
      var fileList = docObj.files;
      for (var i = 0; i < fileList.length; i++) {   
       dd.innerHTML += "<div style='float:left'> <img id='&img" + i + "' /> </div>";
       var imgObjPreview = document.getElementById("&img"+i);
       if (docObj.files && docObj.files[i]) {
            //火狐下,直接设img属性
            imgObjPreview.style.display = 'block';
            imgObjPreview.style.width = width;
            imgObjPreview.style.height = height;
            //imgObjPreview.src = docObj.files[0].getAsDataURL();
            //火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式
            imgObjPreview.src = window.URL.createObjectURL(docObj.files[i]);
       }
       else {
            //IE下,使用滤镜
            docObj.select();
            var imgSrc = document.selection.createRange().text;
            alert(imgSrc)
            var localImagId = document.getElementById("&img" + i);
            //必须设置初始大小
            localImagId.style.width = width;
            localImagId.style.height = height;
            //图片异常的捕捉,防止用户修改后缀来伪造图片
            try {
                 localImagId.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
                localImagId.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
            } catch (e) {
                 alert("您上传的图片格式不正确,请重新选择!");
                 return false;
            }
            imgObjPreview.style.display = 'none';
            document.selection.empty();
       }
      }
      return true;
 }

猜你喜欢

转载自blog.csdn.net/qq_38836082/article/details/81708638