ホームページ >php教程 >PHP开发 >jqueryコンポーネントのWebUploaderファイルアップロードの使い方を詳しく解説

jqueryコンポーネントのWebUploaderファイルアップロードの使い方を詳しく解説

高洛峰
高洛峰オリジナル
2016-12-07 14:32:272538ブラウズ

WebUploader は、Baidu WebFE (FEX) チームによって開発された、主に HTML5 に基づいており、FLASH によって補足された、シンプルでモダンなファイル アップロード コンポーネントです。以下では、jquery WebUploader ファイル アップロード コンポーネントの使用方法を説明します。

WebUploader を使用すると、ファイルをバッチでアップロードしたり、サムネイルをサポートしたり、その他の多くのパラメーター オプションを設定したり、複数のイベント メソッドを呼び出したりすることができ、必要に応じてアップロード コンポーネントをカスタマイズできます。

jqueryコンポーネントのWebUploaderファイルアップロードの使い方を詳しく解説

次に、WebUploaderの使い方を画像アップロード例を使って説明します。

HTML

まず、css および関連する js ファイルを読み込みます。

<link rel="stylesheet" type="text/css" href="css/webuploader.css">
<script src="http://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
<script type="text/javascript" src="js/webuploader.min.js"></script>

次に、追加されたファイル情報リストを保存するためのボタン #imgPicker とコンテナ #fileList を準備する必要があります:

<div id="uploadimg">
 <div id="fileList" class="uploader-list"></div>
 <div id="imgPicker">选择图片</div>
</div>

JAVASCRIPT

Create first Web。アップローダーの例:

var uploader = WebUploader.create({
 auto: true, // 选完文件后,是否自动上传
 swf: &#39;js/Uploader.swf&#39;, // swf文件路径
 server: &#39;upload.php&#39;, // 文件接收服务端
 pick: &#39;#imgPicker&#39;, // 选择文件的按钮。可选
 // 只允许选择图片文件。
 accept: {
 title: &#39;Images&#39;,
 extensions: &#39;gif,jpg,jpeg,bmp,png&#39;,
 mimeTypes: &#39;image/*&#39;
 }
});

次に、fileQueued イベントをリッスンします。つまり、ファイルが追加されたときに、uploader.makeThumb を通じて画像プレビューを作成します。

uploader.on( &#39;fileQueued&#39;, function( file ) {
 var $list = $("#fileList"),
 $li = $(
  &#39;<div id="&#39; + file.id + &#39;" class="file-item thumbnail">&#39; +
  &#39;<img  alt="jqueryコンポーネントのWebUploaderファイルアップロードの使い方を詳しく解説" >&#39; +
  &#39;<div class="info">&#39; + file.name + &#39;</div>&#39; +
  &#39;</div>&#39;
  ),
 $img = $li.find(&#39;img&#39;);
  
  
 // $list为容器jQuery实例
 $list.append( $li );
  
 // 创建缩略图
 uploader.makeThumb( file, function( error, src ) {
 if ( error ) {
  $img.replaceWith(&#39;<span>不能预览</span>&#39;);
  return;
 }
  
 $img.attr( &#39;src&#39;, src );
 }, 100, 100 ); //100x100为缩略图尺寸
});

最後は、ファイルがアップロードされたとき、アップロードが成功したとき、アップロードが失敗したとき、アップロードが完了したときのプロンプトで、それぞれ、uploadProgress、uploadSuccess、
uploadError、uploadComplete イベントに対応します。 。

// 文件上传过程中创建进度条实时显示。
uploader.on( &#39;uploadProgress&#39;, function( file, percentage ) {
 var $li = $( &#39;#&#39;+file.id ),
 $percent = $li.find(&#39;.progress span&#39;);
  
 // 避免重复创建
 if ( !$percent.length ) {
 $percent = $(&#39;<p class="progress"><span></span></p>&#39;)
  .appendTo( $li )
  .find(&#39;span&#39;);
 }
  
 $percent.css( &#39;width&#39;, percentage * 100 + &#39;%&#39; );
});
  
// 文件上传成功,给item添加成功class, 用样式标记上传成功。
uploader.on( &#39;uploadSuccess&#39;, function( file, res ) {
 console.log(res.filePath);//这里可以得到上传后的文件路径
 $( &#39;#&#39;+file.id ).addClass(&#39;upload-state-done&#39;);
});
  
// 文件上传失败,显示上传出错。
uploader.on( &#39;uploadError&#39;, function( file ) {
 var $li = $( &#39;#&#39;+file.id ),
 $error = $li.find(&#39;div.error&#39;);
  
 // 避免重复创建
 if ( !$error.length ) {
 $error = $(&#39;<div class="error"></div>&#39;).appendTo( $li );
 }
  
 $error.text(&#39;上传失败&#39;);
});
  
// 完成上传完了,成功或者失败,先删除进度条。
uploader.on( &#39;uploadComplete&#39;, function( file ) {
 $( &#39;#&#39;+file.id ).find(&#39;.progress&#39;).remove();
});

この時点で、「画像を選択」をクリックすると、画像を選択した後、ファイル選択ダイアログボックスが表示され、対応する画像アップロードプロセスが表示されます。画像の略称が一覧に表示されます。

よく使われるオプション設定とイベント呼び出し

Web Uploader には豊富な API オプション設定とイベント呼び出しが用意されています。

jqueryコンポーネントのWebUploaderファイルアップロードの使い方を詳しく解説

jqueryコンポーネントのWebUploaderファイルアップロードの使い方を詳しく解説

よく使用されるイベントの説明:

jqueryコンポーネントのWebUploaderファイルアップロードの使い方を詳しく解説

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。