今回は、JS で FileReader を使用して画像アップロードのプレビューを紹介します。JS で FileReader を使用して画像アップロード プレビューを実装する場合の 注意事項 は何ですか? 以下は実際的なケースです。
JavaScript FileReader を使用して画像アップロードのプレビュー効果を実現することについて混乱している人がほとんどですが、次の記事で詳細な操作方法を説明します。とコードを一緒に見てみましょう。
FileReader は HTML5 ファイル API の一部です。非同期ファイル読み取りメカニズムを実装します。 FileReader は XMLHttpRequest と考えることができます。唯一の違いは、リモート サーバーではなくファイル システム を読み取ることです。 ファイル内のデータを読み取るために、FileReader は次のメソッドを提供します。
readAsArrayBuffer(file): ファイルを読み取り、ファイル
の内容を含む ArrayBuffer を result 属性に保存します。<p id="wrapper"> <input id="fileUpload" type="file" multiple /><br /> <p id="image-holder"> </p> </p>
$("#fileUpload").on('change', function () { //获取上传文件的数量 var countFiles = $(this)[0].files.length; var imgPath = $(this)[0].value; var extn = imgPath.substring(imgPath.lastIndexOf('.') + 1).toLowerCase(); var image_holder = $("#image-holder"); image_holder.empty(); if (extn == "gif" || extn == "png" || extn == "jpg" || extn == "jpeg") { if (typeof (FileReader) != "undefined") { // 循环所有要上传的图片 for (var i = 0; i < countFiles; i++) { var reader = new FileReader(); reader.onload = function (e) { $("<img />", { "src": e.target.result, "class": "thumb-image" }).appendTo(image_holder); } image_holder.show(); reader.readAsDataURL($(this)[0].files[i]); } } else { alert("你的浏览器不支持FileReader!"); } } else { alert("请选择图像文件。"); } });
FileReader は、Internet Explorer 10 以降、FireFox、Chrome、および Opera ブラウザをサポートしています。
推奨読書:
node.js でデコレータ パターンを実装する方法 Django の複数のデータベースを使用するための詳細な手順
以上がJS の FileReader は画像アップロードのプレビューを実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。