选项卡失去焦点时,jQuery选项卡会继续加载

时间:2017-11-21 12:58:57

标签: javascript jquery jquery-ui tabs

我正在尝试根据http://jqueryui.com/tabs/#ajax上的示例创建一个加载ajax的jQuery选项卡

但是我注意到,在ajax加载开始后,如果我更改了所选的选项卡,当我重新选择ajax选项卡时,XHR请求将被中止并重新启动。

即使用户更改了当前标签,如何保持标签加载?截至目前,我只能通过以下选项阻止它每次重新加载:

beforeLoad: function(e, ui) {
    if(ui.panel.data('loaded') || ui.panel.data('loading')) {
        e.preventDefault();
        return;
    }

    ui.panel.data('loading', true);
    setTimeout(function() {
        block_element(ui.panel.css('min-height', 175), I18N('FULLCALENDAR_LOADING'));
    }, 500);

    ui.jqXHR.success(function() {
        ui.panel.data('loading', false);
        ui.panel.data('loaded', true);
    });
    ui.jqXHR.error(function() {
        ui.panel.data('loading', false);
        ui.panel.data('loaded', false);
    });

    // se era specificata una funzione
    if(typeof old === 'function') {
        // la chiamo
        old.call(this, e, ui);
    }
}

0 个答案:

没有答案