最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JS上傳組件FileUpload自定義模板的使用方法

 更新時間:2016年05月10日 16:52:34   作者:旅行的貓2014  
這篇文章主要為大家詳細介紹了JS上傳組件FileUpload自定義模板的使用方法,感興趣的小伙伴們可以參考一下

FileUpload 是國外一個純javascript 寫的大文件上傳組件,該組件支持分片上傳,斷點續(xù)傳,多文件等功能。
下面就為大家分享FileUpload上傳組件自定義模板(FineUploaderBasic)的使用方法:

以下是配置代碼:

前端配置:

<!--定義按鈕-->
<div id="basic_uploader_fine"><i class="icon-upload icon-white"></i>選擇文件</div>
<div id="triggerUpload">點擊上傳</div>
<!--顯示信息-->
<div id="messages"></div>
<div id="cancelUpload" class="buttons">取消</div>
<div id="cancelAll" class="buttons">取消全部</div>
<div id="pauseUpload" class="buttons">暫停上傳</div>
<div id="continueUpload" class="buttons">繼續(xù)上傳</div>
<script>
 $(document).ready(function() {
 $fub = $('#basic_uploader_fine');
 $messages = $('#messages');

 var uploader = new qq.FineUploaderBasic({
  debug: true,  // 開啟調(diào)試模式
  multiple: true, // 多文件上傳
  button: $fub[0], //上傳按鈕
  autoUpload: false, //不自動上傳則調(diào)用uploadStoredFiless方法 手動上傳
  // 驗證上傳文件
  validation: { 
   allowedExtensions: ['jpeg', 'jpg', 'png', 'zip' , 'rar'],
  }, 
  // 遠程請求地址(相對或者絕對地址)
  request: {
   endpoint: 'server/endpoint.php'
  },
  retry: {
   enableAuto: false // defaults to false 自動重試
  }, 
  chunking: {
   enabled: true,
   partSize: 500, // 分組大小,默認為 2M
   concurrent: {
    enabled: true // 開啟并發(fā)分組上傳,默認并發(fā)3個
   },
   success: {
    endpoint: "server/endpoint.php?done" // 分組上傳完成后處理
   }
  },
  //回調(diào)函數(shù)
  callbacks: {
  //文件開始上傳
  onSubmit: function(id, fileName) {
   $messages.append('<div id="file-' + id + '" class="alert" style="margin: 20px 0 0">'+fileName+'</div>');
  },
  onUpload: function(id, fileName) {
   $('#file-' + id).addClass('alert-info')
       .html('<img src="client/loading.gif" alt="Initializing. Please hold."> ' +
        'Initializing ' +
        '“' + fileName + '”');
  },
  //進度條
  onProgress: function(id, fileName, loaded, total) {
   if (loaded < total) {
   progress = Math.round(loaded / total * 100) + '% of ' + Math.round(total / 1024) + ' kB';
   $('#file-' + id).removeClass('alert-info')
       .html('<img src="http://img.zcool.cn/community/01ff2756629d096ac725b2c8e95102.gif" width="50px" height="50px;" alt="In progress. Please hold."> ' +
         '上傳文件中......' + progress);
   } else {
   $('#file-' + id).addClass('alert-info')
       .html('<img src="http://img.zcool.cn/community/01ff2756629d096ac725b2c8e95102.gif" width="50px" height="50px;" alt="Saving. Please hold."> ' +
         '上傳文件中...... ');
   }
  },
  //上傳完成后
  onComplete: function(id, fileName, responseJSON) {
   if (responseJSON.success) {
   var img = responseJSON['target']
   $('#file-' + id).removeClass('alert-info')
       .addClass('alert-success')
       .html('<i class="icon-ok"></i> ' +
         '上傳成功! ' +
         '“' + fileName + '”'
        );
   } else {
   $('#file-' + id).removeClass('alert-info')
       .addClass('alert-error')
       .html('<i class="icon-exclamation-sign"></i> ' +
         'Error with ' +
         '“' + fileName + '”: ' +
         responseJSON.error);
   }
  },
  onError: function(id, name, reason, maybeXhrOrXdr) {
   console.log(id + '_' + name + '_' + reason);
  },  
  }  
 });

 //手動觸發(fā)上傳上傳
  $('#triggerUpload').click(function() {
  uploader.uploadStoredFiles();
 });
 //取消某一個上傳
  $('#cancelUpload').click(function() {
  uploader.cancel(0);
 });
 //取消所有未上傳的文件
  $('#cancelAll').click(function() {
   //單個文件上傳沒有作用 因為已經(jīng)在上傳的不能使用這個cancelAll取消上傳
   uploader.cancelAll();
 });
 //暫停上傳某個文件
 $('#pauseUpload').click(function() {
   uploader.pauseUpload(0);
 });
 // 繼續(xù)上傳
 $('#continueUpload').click(function() {
   uploader.continueUpload(0);
 });
});
</script>

php代碼:

//handler.php文件官網(wǎng)上下
require_once "handler.php";
$uploader = new UploadHandler();
// 文件類型限制
$uploader->allowedExtensions = array(); 
// 文件大小限制
$uploader->sizeLimit = null;
// 上傳文件框
$uploader->inputName = "qqfile";
// 定義分組文件存放位置
$uploader->chunksFolder = "chunks";
$method = $_SERVER["REQUEST_METHOD"];

//上傳目的文件夾(由于原來的文件存放規(guī)則不符合我們的需求所以修改了handler.php的代碼添加了個文件夾生成規(guī)則【你也可以自定義】)
$uploadDirectory = $uploader->getPathName('member_avatar');
if ($method == "POST") {
 header("Content-Type: text/plain");

 // 分組上傳完成后對分組進行合并
 if (isset($_GET["done"])) {
  $result = $uploader->combineChunks($uploadDirectory); // 合并分組文件

 } else {
  //開始上傳文件
  $result = $uploader->handleUpload($uploadDirectory);
  // 獲取上傳的名稱
  $result["uploadName"] = $uploader->getUploadName();

 }
 echo json_encode($result);
}
//刪除文件處理
else if ($method == "DELETE") {
 $result = $uploader->handleDelete($uploadDirectory);
 echo json_encode($result);
}
else {
 header("HTTP/1.0 405 Method Not Allowed");
}

以上是一個簡單的自定義模板的配置,希望對大家的學習有所幫助。

相關文章

  • 使用typescript類型實現(xiàn)ThreeSum

    使用typescript類型實現(xiàn)ThreeSum

    這篇文章主要介紹了使用typescript類型實現(xiàn)ThreeSum,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以一下,希望對你學習又是幫助
    2022-08-08
  • JS實現(xiàn)簡單網(wǎng)頁倒計時器

    JS實現(xiàn)簡單網(wǎng)頁倒計時器

    這篇文章主要為大家詳細介紹了JS實現(xiàn)簡單網(wǎng)頁倒計時器,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • JavaScript 應用技巧集合[推薦]

    JavaScript 應用技巧集合[推薦]

    前段時間我曾經(jīng)對JavaScript中的應用技巧進行了收集和總結這里我將會對這些應用技巧進行集中描述,如果你覺得遺漏了一些好用的應用技巧,也請在留言中提出,我會及時更新到這篇文章中的。
    2009-08-08
  • javascript模擬C#格式化字符串

    javascript模擬C#格式化字符串

    學習C#的朋友都知道format()這個方法,本文給大家介紹在javascript中如何實現(xiàn)此操作,js模擬C#字符串格式化操作,需要的盆友一起學習吧
    2015-08-08
  • JSQL 批量圖片切換的實現(xiàn)代碼

    JSQL 批量圖片切換的實現(xiàn)代碼

    其實這個example也很簡單, 就是根據(jù)where后的條件批量修改element的屬性,此處為Img元素
    2010-05-05
  • 通過js控制修改css變量的具體示例

    通過js控制修改css變量的具體示例

    在網(wǎng)頁開發(fā)中我們通常使用CSS來設置網(wǎng)頁的樣式,但是,在開發(fā)過程中,有時候我們需要根據(jù)不同的條件來動態(tài)修改樣式,這篇文章主要介紹了通過js控制修改css變量的具體示例,需要的朋友可以參考下
    2025-04-04
  • javaScript中FormData使用方法示例

    javaScript中FormData使用方法示例

    這篇文章主要為大家介紹了javaScript中FormData使用方法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • JavaScript實現(xiàn)網(wǎng)頁版貪吃蛇游戲

    JavaScript實現(xiàn)網(wǎng)頁版貪吃蛇游戲

    這篇文章主要為大家詳細介紹了JavaScript實現(xiàn)網(wǎng)頁版貪吃蛇游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • 用JS實現(xiàn)選項卡

    用JS實現(xiàn)選項卡

    這篇文章主要為大家詳細介紹了用JS實現(xiàn)選項卡效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • layui實現(xiàn)下拉復選功能的例子(包括數(shù)據(jù)的回顯與上傳)

    layui實現(xiàn)下拉復選功能的例子(包括數(shù)據(jù)的回顯與上傳)

    今天小編大家分享一篇layui實現(xiàn)下拉復選功能的例子(包括數(shù)據(jù)的回顯與上傳),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09

最新評論

昌乐县| 民县| 固原市| 康定县| 县级市| 嘉兴市| 敦煌市| 墨竹工卡县| 海晏县| 桦南县| 甘肃省| 景泰县| 岐山县| 马尔康县| 廊坊市| 和田县| 澄江县| 来凤县| 四子王旗| 海伦市| 武平县| 天全县| 昔阳县| 南木林县| 安阳市| 文成县| 威宁| 根河市| 祁东县| 白玉县| 郎溪县| 沙洋县| 翁源县| 故城县| 大化| 通许县| 屯昌县| 准格尔旗| 新建县| 舞阳县| 清远市|