jquery 1.11 tabs禁用缓存不工作

时间:2017-01-20 10:24:55

标签: javascript jquery caching

我已经从jquery 1.8.4迁移到1.11,从那时起在IE 11中遇到了缓存行为问题。

在1.8.4中禁用我使用的缓存

var $tabs = $('#tabs').tabs({ajaxOptions: { cache: false }

但是现在不再支持缓存属性,数据总是从缓存加载。我更改了代码但没有效果。这适用于Firefox但不适用于IE

var $tabs = $('#tabs').tabs({ajaxOptions: { cache: false },
    beforeLoad: function( event, ui ) {
        if ( ui.tab.data( "loaded" ) ) {
            event.preventDefault();
            return;
        }
        ui.jqXHR.success(function() {
            ui.tab.data( "loaded", true );
        });
    }
}); 

1 个答案:

答案 0 :(得分:1)

beforeLoad: function( event, ui ) {
            var link = $(ui.tab).find("a").attr("href");
            var index = link.lastIndexOf("?"); 
            var timestamp = Date.now();
            if(index > 0) {
                link = link.substring(0, index);  
            }
            link = link + "?ts_=" +  timestamp;
            ui.ajaxSettings.url = link;

        }