JS asynchronous processing is really a headache, especially the Ajax thing. I'm just going to start with the jquery Ajax property as a convenience. async: false
但是这样做问题很多,会让浏览器假死,好在ajax提供了一个defferd的新办法.
function Makejsonp (URL, data) { return $.ajax ({ type: "POST", data:data, url:url, dataType: " Jsonp ", Jsonp:" Callback " });
Lunbodfd=makejsonp (host+ ' homenews ', data). Done (function (result) { $swiperContainer. Children ('. Swiper-wrapper '). HTML (producehtml (Result)});
$.when (LUNBODFD). Done (function () { var swiper = new Swiper (' #swiperContainer ', { loop:true, /!* spacebetween:10,*!/ centeredslides:true, autoplay:2500, autoplaydisableoninteraction:false });
Once the Ajax execution has been successfully monitored, the HTML content is inserted into the page and then the Swiper carousel is executed so that the Swiper can execute properly.
This is easy to manage code, you can write the code of the individual function in another module, do not mix together, put in the Ajax success success function,
It's easy to write, and it's easy to read back. Less nesting is to see the comfort
JavaScript multiple Asynchronous processing workarounds