Javascript Firefox处理window.onpopstate是否与Chrome和Safari不同?
我一直试图让一个单页应用程序在Chrome、Safari和Firefox上运行,但Firefox似乎根本没有执行window.onpopstateJavascript 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中
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浏览器。