php – 我可以知道人们何时在新标签中打开我网站上的链接?
作者:互联网
我想知道的是当人们点击我的网站上的链接(内部链接 – 而不是其他网站),如果他们只是点击它或按住Ctrl键点击它(或右键单击 – 在新标签页中打开).
我用PHP.
例如:
人在第1页上,然后单击第2页的链接.
当他们在第2页时,我想知道他们来自哪里(_server [‘http_referer’]给了我),但我也想知道他们是否在新窗口/选项卡中打开了页面.我需要知道这是因为页面上的历史回复按钮.
原因是要知道网站周围的浏览历史记录 – 我创建会话以跟踪浏览历史记录(这样我可以返回一页,两页返回或任何给定时间返回三页)但我不想要选项卡之间冲突的会话,以便每个选项卡都有自己的浏览历史记录.这就是为什么我需要为每个打开的选项卡创建新会话.
我发现作为我的问题的可能解决方案是使用类似于这样的javascript:
<script>
var history_status = history.length;
var referrer_site = document.referrer;
if(history_status > 1 && referrer_site != "") {
alert(referrer_site);
} else {
alert('No referrer site');
}
</script>
我需要更改一点,但这是我的第一个检查它是否有效的演示(它确实如此)
我首先需要找到浏览器用户正在使用的内容,因为当您使用IE时,history_status为历史记录中的第一页提供0,如果您使用的是Firefox或Chrome,则为1.
解决方法:
这听起来不像是良好的用户体验.后退按钮和允许人们打开新标签是用户期望以某种方式表现的东西.我个人觉得很沮丧.如果他们无法为该标签创建自己独特的浏览历史记录,那么新标签中有什么意义?
如果你真的真的想这样做.创建一个带有数字的cookie,在每个页面上加载提升数字,并将页面URL存储在数据库中以用于该会话.在页面加载时,拉入thr历史记录并通过JavaScript将其加载到浏览器历史记录中. Eeek.
标签:php,session,tabs,browser-history 来源: https://codeday.me/bug/20190709/1417831.html