Javascript Firefox处理window.onpopstate是否与Chrome和Safari不同?

Javascript Firefox处理window.onpopstate是否与Chrome和Safari不同?,javascript,html,.htaccess,html5-history,Javascript,Html,.htaccess,Html5 History,我一直试图让一个单页应用程序在Chrome、Safari和Firefox上运行,但Firefox似乎根本没有执行window.onpopstate window.onpopstate = function() { fullpath = location.pathname; console.log(fullpath); } 我有.htaccess将所有请求路由回index.html,因此当客户端发出请求时,浏览器将url存储为javascript变量,并通过index.html中

我一直试图让一个单页应用程序在Chrome、Safari和Firefox上运行,但Firefox似乎根本没有执行window.onpopstate

window.onpopstate = function() {
    fullpath = location.pathname;
    console.log(fullpath);
}
我有.htaccess将所有请求路由回index.html,因此当客户端发出请求时,浏览器将url存储为javascript变量,并通过index.html中的js传递

在firefox中运行时,变量不会传递到index.html页面。有人对如何深入研究这个问题有什么解决方案或建议吗?

来自:

浏览器倾向于在页面加载时以不同的方式处理popstate事件。 Chrome和Safari总是在页面加载时发出popstate事件,但是 Firefox没有


正如Epasarello在评论中所说,在
load
事件中初始化变量,一切都应该在Chrome/Safari和Firefox中工作。

什么时候不触发?页面加载时或用户导航时?页面加载时。变量从未加载。因此,在页面加载时使用当前URL设置变量似乎可以解决我的问题。谢谢。我猜一个很好的建议是为IE设置一个标签回退?@Emanegux如果你有足够的IE用户,那么就可以了。请注意,FireFox、IE10等都展示了符合HTML5标准的行为。投票支持谷歌修复Chrome浏览器。