我有两页。页面2可由第1页访问。
问题是我想检测是否有人通过第2页返回第1页并带有返回按钮以显示其他内容。
PAGE 1 -------------------------> PAGE
Normale Display Create SESSION or COOKIE
|
|
If SESSION or COOKIE <--------- Pressed back button
-> Secondary Display
所以我试着:
有没有人为我看到一个解决方案,要么强制阅读其中一件事,要么强迫页面按下,当按下后退按钮时它就像是一种普通的方式?
我愿意接受任何解决方案这已经过了两天漫长的日子。
让我的问题改为:如何使用后退按钮检测网页是否到达?
所以我已经看过this question,但它是旧的(2009)和使用Iframe的答案,如果我能避免我也喜欢。
答案 0 :(得分:0)
最简单的方法是检查$_SERVER['HTTP_REFERER']
,但如果有人在查看您的网站时打开了多个标签,则无法正常使用。
我认为没有任何好的&#34;解决你的问题。
修改强> 我想更好的问题是问你想要具体实现什么。为什么你需要知道是否有人通过返回按钮来到第2页的第1页?有没有其他方法可以解决你的问题?
答案 1 :(得分:0)
你可以通过更改本地存储来实现这一点。
初始化第2页时,请检查本地存储的精确存储是否为空。如果没有,请另外显示您想要的内容。
要做到这一点,你必须把一个控制器当它被调用时这样做,并且在加载页面2时不要忘记调用它。
但您需要清空该本地存储空间。因此,您可能希望每次进入除第二页以外的其他页面时重置它。
它有点脏,但应该有效。
注意:使用Angular JS很容易做到这一点。使用纯Javascript可能不是那么容易,但我很确定它是可能的。
希望可以提供帮助。
答案 2 :(得分:0)
好的,所以解决方案是通过url的历史发送变量。
从HTML5开始,您可以modify the history of navigation。
所以基本上我的理念是在url中发送值,如get请求:
yoursite.com/where_you_are?something=value
为此,您可以使用以下代码修改网址历史记录:history.replaceState({},'',newURL)
最终,如果您想将对象发送到您的网页,可以使用{}
这样的{myobject: value, ...}
。
希望这可以提供帮助,并查看上面链接的mozilla的精彩文档。
最后看看there too