我有以下代码,我获取了一个xml文件,并将其转换为JSON:
showLoading();
$.get(data_file_path, {}, function(content, textStatus, jqXHR){
data_object = jqXHR;
jsonObject = xml2json.parser(data_object.responseText);
hideLoading();
});
其中data_file_path是.xml文件。使用此当前代码,加载.gif不会旋转,因为xml2json.parser()调用没有异步执行。这只是一个JavaScript函数。没有更多,没有更少。我如何进行此调用同步异步,以便加载.gif继续旋转,然后在解析jsonObject时正常隐藏?!
答案 0 :(得分:1)
AJAX首先异步的唯一原因是因为你不必在从服务器获取数据时不断运行代码,脚本可以说“好吧,当它完成时,执行此操作”
但是,xml2json.parser
是一个JS脚本。它一直在运行代码,直到它完成,因此无法重绘。
解决这个问题的唯一方法是手动编写自己的版本,以便在计时器上逐个加载。