Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何确定location.hash是否从后退按钮更改_Javascript_Mobile_History_Transition_Back - Fatal编程技术网

Javascript 如何确定location.hash是否从后退按钮更改

Javascript 如何确定location.hash是否从后退按钮更改,javascript,mobile,history,transition,back,Javascript,Mobile,History,Transition,Back,我正在使用一个历史插件制作一个webapp,它可以将像mysite.com/#news这样的url片段映射到视图。这是一个移动HTML5 JavaScript应用程序,当从mysite.com/#news转到mysite.com/#东西时,页面之间会有一个从右向左滑动的动画。一切都好 然后用户单击浏览器的“后退”按钮,位置变回/#新闻,预期的转换将从左向右。但是,我怎么知道“后退”是被点击的,而不是“前进”或点击了一些链接 历史插件只是轮询一个散列更改-它不知道是什么导致了它。我找不到任何有用的

我正在使用一个历史插件制作一个webapp,它可以将像mysite.com/#news这样的url片段映射到视图。这是一个移动HTML5 JavaScript应用程序,当从mysite.com/#news转到mysite.com/#东西时,页面之间会有一个从右向左滑动的动画。一切都好

然后用户单击浏览器的“后退”按钮,位置变回/#新闻,预期的转换将从左向右。但是,我怎么知道“后退”是被点击的,而不是“前进”或点击了一些链接

历史插件只是轮询一个散列更改-它不知道是什么导致了它。我找不到任何有用的本机事件来绑定,也找不到安全块来访问window.history数组


有什么方法可以做到这一点吗?

我会在每个页面上存储我在哪个页面上,以及我来自哪个页面,然后在cookie或存储中查看我在哪个页面上。即,在我的网站中保留我自己的历史记录。这可能与难以捉摸的文档相结合。referer要查看我是否来到一个没有referer的页面,这可能是我使用了书签的迹象,我会在每个页面上存储我在哪个页面上,以及我来自哪个页面,然后在cookie或存储中查看我在哪个页面上。即,在我的网站中保留我自己的历史记录。这可能与难以捉摸的document.referer结合在一起,看看我是否来到一个没有referer的页面,这可能是我使用了书签的迹象,我也在考虑类似的事情。但是,如果你预计会有几次倒转,情况可能会变得非常混乱。现在我刚刚制作了一个“淡入淡出”的动画,当我不知道方向的时候。我也在考虑类似的事情。但是,如果你预计会有几次倒转,情况可能会变得非常混乱。现在我刚刚制作了一个“淡入”动画,当我不知道方向的时候。