我很好奇是否有更好的方法可以在一个页面上处理多个load()
函数?我在这里有这个代码:
setInterval(function update() {
if (denial) return;
denial = true;
$.ajax({
url: 'update.php',
error: function () {
denial = false;
},
complete: function () {
denial = false;
$('#loader').hide("slow");
$('#credits').load('world1.php?mode=money');
$('#fuelleft').load('world1.php?mode=fuel');
$('#energyleft').load('world1.php?mode=energy');
$('#starmap').show("slow");
$('#upgrade-holder').load('world1.php?mode=up');
},
});
}, 1000);
它工作得非常好,但有什么办法可以改进这段代码吗?
答案 0 :(得分:3)
update.php
可以包含所有需要更新的内容。然后,您可以使用html
更新,例如:
$.ajax({
url: 'update.php',
dataType: 'json',
success: function(data) {
$('#credits').html(data.money);
$('#fuelleft').html(data.fuel);
$('#energyleft').html(data.energy);
// ...
}
});
此处的代码假定update.php
返回如下所示的JSON:
{"money":"<p>some HTML to go into #credits</p>","fuelleft":"<p>more HTML</p>",…}
...但您可以轻松地将其修改为其他输出格式。