jQuery插件是網(wǎng)頁(yè)設(shè)計(jì)中常用的工具,其中包括jQuery AJAX,這個(gè)插件極大地提高了網(wǎng)頁(yè)的質(zhì)量和易用性。在開發(fā)人員使用jQuery AJAX進(jìn)行文件上傳時(shí),一個(gè)重要的問題是上傳速度。那么如何優(yōu)化上傳速度呢?
$(document).on('change','#file',function() { var file_data = $('#file').prop('files')[0]; var form_data = new FormData(); form_data.append('file', file_data); $.ajax({ url: 'upload.php', dataType: 'text', cache: false, contentType: false, processData: false, data: form_data, type: 'post', xhr: function () { var xhr = $.ajaxSettings.xhr(); xhr.upload.onprogress = function (evt) { var loaded = evt.loaded; //已經(jīng)上傳大小情況 var tot = evt.total; //附件總大小 var per = Math.floor(100 * loaded / tot); //已經(jīng)上傳的百分比 $(".progress-bar").css("width", per + "%"); $(".progress-bar").text(per + "%"); }; return xhr; }, success: function (data) { $('.response').html(data); }, error: function (e) { $('.response').html(e.responseText); } }); });
如上所述,我們能看到開發(fā)人員可以使用xhr對(duì)象中的upload.onprogress方法來(lái)監(jiān)測(cè)上傳進(jìn)度。通過(guò)此方法,可以及時(shí)地更新進(jìn)度條。
除了使用上傳進(jìn)度監(jiān)測(cè)之外,網(wǎng)站設(shè)計(jì)者還可以使用其他的一些優(yōu)化技巧,如文件壓縮和減小文件大小等。這樣可以使文件上傳更快。
綜上所述,使用jQuery AJAX進(jìn)行文件上傳時(shí)需要優(yōu)化上傳速度,除了使用上傳進(jìn)度監(jiān)測(cè)之外,還可以使用其他的一些優(yōu)化技巧。
上一篇好看的css樣式代碼