繁体   English   中英

历史Api

[英]History Api

$('#Head a').click(function()
{
    alert("");
    var link = $(this).attr('href');
    $.get(link, function(data) {
        $('#NavDetailContent').html(data);
        history.pushState(null, null, link);
        e.preventDefault();
    });
    return false;
});

$(window).bind("popstate", function() {
    $.get(document.location, function(data) {
        $('#NavDetailContent').html(data);
        alert("");
    });
});

我正在试用历史API,但是发现了以下内容。

  1. 当我从ajax链接移至非ajax链接时,我仅单击返回从ajax获取的内容,而不显示整个页面。 那为什么是因为历史API或其他原因(这就是背面所显示的一切) 在此处输入图片说明

  2. 当我刷新页面时,将触发popstste事件。 这次,如果我在非ajax页面上,它将触发请求并将内容加载到div中。 我已经在服务器端小心了,即使当它是ajax请求时也显示ajax和non ajax的不同页面,但是它显示了非ajax页面,仅在这种情况下所有其他时间都可以正常工作

在这个项目中https://github.com/defunkt/jquery-pjax有使用特殊的HTTP标头,以防止这一点。 它们使用相同的方法来生成内容AJAX和NONAJAX,但如果你使用AJAX,在服务器端,以防万一不产生内容。 所以,当你回去,你发链接到服务器,而无需特殊的HTTP标头,从而产生完全与所有countent角落找寻页。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM