Chrome和IE中的Popstate后退按钮功能很慢(firefox很好)

时间:2016-01-18 16:26:13

标签: javascript jquery ajax google-chrome html5-history

我设法设置了一个使用HTML5 History API的工作示例。它在Firefox中运行良好,但在Chrome和IE11中,每次按下后退或前进按钮都会使页面加载时间慢得多。

按下4到5次(在两页之间来回),它变得非常慢。

猜测可能是关于如何使用AJAX加载内容,但为什么它可以很好地用于页面之间的前几个转换。

这是一个有用的链接: http://madebym.me/playground/AJAX-transitions/

以下是使其全部工作的代码片段:

loadContent = function () {
$.ajax({
url: pageUrl, success: function (data) {
        $('#main-content').html(data);
    }
});

if (pageUrl != window.location) {
    window.history.pushState({ path: pageUrl }, '', pageUrl);
}

}

$(window).on('popstate', function () {
    $.ajax({
        url: location.pathname, success: function (data) {
            $('#main-content').html(data);
        }
    });
});


$('a').on('click', function () {
pageUrl = $(this).attr('href');
loadContent();
return false;

});

0 个答案:

没有答案