我很好奇是否有更好的方法可以在一页上处理多个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);

它工作得很好,但是有什么办法可以改进此代码?

最佳答案

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>",…}

…但是您可以轻松地将其修改为其他输出格式。

关于javascript - 多重加载功能?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21819744/

10-12 15:09