• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:HTML5 File APIを利用したサムネイル)

HTML5 File APIを利用したサムネイルの表示方法について

このQ&Aのポイント
  • HTML5 File APIを使って画像アップロード前にサムネイルを表示する方法について質問です。
  • 具体的には、以下のソースコードのclass=imgで指定した場所にサムネイルを表示する方法が知りたいです。
  • また、参考URLに書かれているJavascriptのコードの書き方についてもわかりません。

質問者が選んだベストアンサー

  • ベストアンサー
  • b0a0a
  • ベストアンサー率49% (156/313)
回答No.2

これでいかがですか? <form enctype="multipart/form-data" method="post"> <p><span class="thumbnail"></span><input type="file" name="userfile_01"></p> <p><span class="thumbnail"></span><input type="file" name="userfile_02"></p> <p><span class="thumbnail"></span><input type="file" name="userfile_03"></p> </form> <style> .thumbnail { display: inline-block; width: 100px; height: 100px; border: solid 2px black; background: no-repeat center/contain; } </style> <script> addEventListener('DOMContentLoaded', function () { [].forEach.call(document.querySelectorAll('input[type=file]'), function (elm) { elm.onchange = function () { var url = URL.createObjectURL(elm.files[0]) elm.previousElementSibling.style.backgroundImage = 'url(' +url+ ')' } }) }) </script>

midorin_h
質問者

お礼

大変に助かりました。 もっと勉強します。ありがとうございました。

その他の回答 (1)

  • b0a0a
  • ベストアンサー率49% (156/313)
回答No.1

<style> .img_01, .img_02, .img_03 { max-width: 100px; max-height: 100px; } </style> <script> addEventListener('DOMContentLoaded', function () { [].forEach.call(document.querySelectorAll('input[type=file]'), function (elm) { elm.onchange = function () { elm.previousElementSibling.src = URL.createObjectURL(elm.files[0]) } }) }) </script>

midorin_h
質問者

補足

パーフェクトです。 もうひとつお願いです。 <span class="">ここに画像</span> の場合はどのようにするかわかりません。 大変申し訳ありません教えてください。困ってます。

関連するQ&A

専門家に質問してみよう