当我在地址栏中手动输入网址(通过输入网址)时,popstate
正在劫持它,然后我才能通过其他功能对其进行处理。
在执行其他任何操作之前,我正在使用AJAX调用来测试文件是否存在:
let directUrl = location.hash.substr(1) + ".html";
$.ajax({
url: directUrl,
type:'HEAD',
error: function(){
// File doesn't exist - load default page
loadContent("portfolio.html");
},
success: function(){
// File exists - load it
loadContent(directUrl);
}
});
但是有时 popstate
在AJAX功能之前触发
$(window).bind("popstate", function() {
let link = location.hash.substr(1) + ".html";
loadContent(link);
});
popstate
旨在劫持URL是手动输入到地址栏中的吗?
为什么有时只发生这种情况?
干杯。