国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

jQuery監聽文件上傳實現進度條效果的方法

2019-11-20 08:44:31
字體:
來源:轉載
供稿:網友

原理:

給XMLHttpRequest對象的upload屬性綁定onprogress方法監聽上傳過程

var xhr=new XMLHttpRequest(); xhr.upload.onprogress=function(e){}

因為jQuery默認使用的XMLHttpRequest對象是內部生成的無法直接給jq的xhr綁定onprogress方法

所以只要給jQuery重新生成一個綁定了onprogress的XMLHttpRequest對象即可實現

首先封裝一個方法 傳入一個監聽函數 返回一個綁定了監聽函數的XMLHttpRequest對象

var xhrOnProgress=function(fun) {  xhrOnProgress.onprogress = fun; //綁定監聽  //使用閉包實現監聽綁  return function() {    //通過$.ajaxSettings.xhr();獲得XMLHttpRequest對象    var xhr = $.ajaxSettings.xhr();    //判斷監聽函數是否為函數    if (typeof xhrOnProgress.onprogress !== 'function')      return xhr;    //如果有監聽函數并且xhr對象支持綁定時就把監聽函數綁定上去    if (xhrOnProgress.onprogress && xhr.upload) {      xhr.upload.onprogress = xhrOnProgress.onprogress;    }    return xhr;  }}

上傳時使用$.ajax方法

$.ajax({  url: url,  type: 'POST',  xhr:xhrOnProgress(function(e){    var percent=e.loaded / e.total;//計算百分比  })});

使用HW.js文件上傳工具 自帶進度條效果 支持綁定自定義監聽函數,支持上傳實時預覽(HTML5實現 無需服務器)HW.js

<div id="cover" class="HW_upload">請選擇要上傳的文件</div><script>var upload= new HW.Widget.upload.Create({  target:'#cover',//指定上傳控件  url:"/upload.php",//上傳地址  //設置允許上傳的文件大小 單位為kb 默認為 4096  maxSize:2048,  //開啟多文件上傳  mult:false,  //設置上傳按鈕的文字  uploadText:'請選擇要上傳的文件',  //設置上傳超時限制 單位為分鐘 默認為20分鐘  timeout:20,  //設置允許上傳的文件類型 默認為['png','jpg','jpeg']  // accept:['jpg'],  //設置文件上傳參數名 默認為HW_upload_input  inputName:'cover',  //設置控件為圖片上傳 默認為true 為false時則不開啟文件預覽  isImage:true,  //自定義文件檢查函數 默認檢測文件大小 類型  // fileCheck:function(file){return true;},  viewSize:[500,300],//設置圖片預覽框寬高 默認為400,300  viewImageWidth:70,//設置預覽圖片寬度默認為80  done:function(data){    alert(data);//獲得上傳結束后服務器返回的數據  }});

以上就是小編為大家帶來的jQuery監聽文件上傳實現進度條效果的方法全部內容了,希望大家多多支持武林網~

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 二连浩特市| 河津市| 明光市| 景洪市| 元阳县| 阿拉善左旗| 洛浦县| 分宜县| 南康市| 左贡县| 阿拉善右旗| 武强县| 仪征市| 林芝县| 崇义县| 阿坝县| 三门县| 昌邑市| 山丹县| 西华县| 双柏县| 岚皋县| 涿鹿县| 堆龙德庆县| 顺义区| 巢湖市| 双柏县| 保靖县| 赤水市| 梅州市| 楚雄市| 和顺县| 西充县| 徐州市| 塔城市| 宝兴县| 嘉峪关市| 宜昌市| 陇西县| 盖州市| 屯留县|