지연된 AJAX 요청 배열이 jQuery를 사용하여 완료되는시기를 감지 할 수 있으며, 페이지가 jQuery를 사용하여로드되는시기를 감지 할 수 있습니다.
하지만 동시에 둘 다 감지 할 수없는 것 같습니다.
내가 가진 것은 다음과 같습니다.
$(function () {
var getscriptlist = ['js/libs/handlebars.js', 'js/libs/ember.js', 'js/libs/prefixfree.js'];
var deferreds = [];
for (var i = 0; i < getscriptlist.length; i++) {
deferreds.push($.getScript(getscriptlist[i]));
}
$.when.apply($, deferreds).then(function () {
});
});
하지만 페이지가로드되기 전에 AJAX 요청이 실행되기를 원하며 문서가로드 될 때 무언가를 실행하고 싶습니다.
내 현재 문제는 페이지가로드되고 AJAX가 페이지가로드 된 후에 만 실행되기 시작하므로 너무 오래 걸린다는 것입니다. 다른 방식으로 전환하면 (요청이 실행되고 페이지가로드 될 때) AJAX 요청이 너무 오래 걸리고 페이지에서 스크립트 실행이 지연되어 바인딩됩니다. $(function
페이지로드가 완료되면 실행되는 내부로 이동합니다 .
도움이 필요하세요? 감사.
이 작업을 수행하는 방법에는 여러 가지가 있습니다. 다음은 하나입니다.
$(function () {
var getscriptlist = ['js/libs/handlebars.js', 'js/libs/ember.js', 'js/libs/prefixfree.js'];
var deferreds = [ $.Deferred() ];//<<<<<< start the array with a special Deferred
$(window).on('load', deferreds[0].resolve);//<<<<<< resolve the special Deferred when the page has loaded
for (var i = 0; i < getscriptlist.length; i++) {
deferreds.push($.getScript(getscriptlist[i]));
}
$.when.apply($, deferreds).then(function () {
//code here will run when all Deferreds/promises in the array become resolved.
});
});
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다