Показать сообщение отдельно
  #2 (permalink)  
Старый 09.03.2018, 14:15
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

Teamur,
<!doctype html><meta charset='utf-8'><title>BLOB</title>
<div id='BOX'></div>
<input id='FI' type='file' multiple>

<style>
  #BOX{display:flex;flex-wrap:wrap}
  img{width:300px;padding:10px}
</style>

<script>
   "use strict"
  function getBlobFromSrc(blob){
   return function(e) {
    let img=e.target, strBlob=e.target.src;
    console.log(strBlob);
    console.log(blob);
    }

    		// Что нужно сделать, чтобы снова отобразить blob а не строку
  };

  function Store(blob){ console.log(blob);
    let img=new Image;
    img.src=URL.createObjectURL(blob);
    img.addEventListener('click',getBlobFromSrc(blob));
    BOX.append(img);
  };

  FI.onchange=e=>{
    let i, n=e.target.files, r;
    for(i of n){
      r=new FileReader;
      r.readAsDataURL(i);
      r.onload=e=>fetch(e.target.result)
       .then(i=>i.blob())
       .then(i=>Store(i))
    }
  };

</script>
Ответить с цитированием