Javascript jQuery微调器在即将到来的函数完成加载之前不会显示

Javascript jQuery微调器在即将到来的函数完成加载之前不会显示,javascript,jquery,activity-indicator,Javascript,Jquery,Activity Indicator,我创建了两个应该显示和隐藏微调器()的函数: 因此,在我的process()函数中,我首先启用微调器,调用另一个从数据库加载数据的函数,然后停止微调器: function process() { startSpin(); loadData(); stopSpin(); } loadData()函数相当重,这意味着它可能需要几秒钟才能完成 问题在于,微调器仅在loadData()函数完成后显示 为什么在调用loadData()函数之前微调器不出现?如果loadDat

我创建了两个应该显示和隐藏微调器()的函数:

因此,在我的
process()
函数中,我首先启用微调器,调用另一个从数据库加载数据的函数,然后停止微调器:

function process() {
     startSpin();
     loadData();
     stopSpin();
}
loadData()
函数相当重,这意味着它可能需要几秒钟才能完成

问题在于,微调器仅在
loadData()
函数完成后显示


为什么在调用
loadData()
函数之前微调器不出现?

如果
loadData()
正在执行同步ajax调用,那么它将冻结所有内容。这就是为什么同步ajax是一个如此糟糕的主意。JavaScript在一个线程中运行,所以就像前面所说的,任何同步操作都会冻结UI
function process() {
     startSpin();
     loadData();
     stopSpin();
}