你可以捕获
window.onbeforeunload()
事件并使用 cookies 存储每次后退按钮点击的数量,你可以更新 cookie。试一下。
使用 popstate 和 cookies 可以实现这一点,我使用了一个名为
cookie 的插件。
同时将它们导入到你的页面中。
以下是导入代码:
<script src="/jqueries/jquery.cookie.js"></script>
这是我使用的代码。
$(window).on('popstate', function () {
var val = 1;
if (typeof $.cookie('example') === 'undefined') {
} else {
val = parseInt($.cookie("example")) + 1;
$.removeCookie("example");
}
$.cookie("example", val, { expires: 7 });
});
这只是一个粗糙的代码,您可以按照需求进行修改。它将会创建 pushstate
。
将此代码添加到脚本中...
HTML 中仅含 DEMO 内容。
<input type="text" id="t1" />
<input type="text" id="t2" />
<input type="text" id="t3" />
<input type="text" id="t4" />
<input type="text" id="t5" />
以下是不带AJAXify的HTML5 pushstate脚本。请尝试使用这些脚本...
$('#t1').click(function () {
if (window.history.replaceState) {
window.history.pushState('', 'Title', '/YourPagename/123/1234');
}
});
$('#t2').click(function () {
if (window.history.replaceState) {
window.history.pushState('', 'Title', '/YourPagename/123/12345');
}
});
$('#t3').click(function () {
if (window.history.replaceState) {
window.history.pushState('', 'Title', '/YourPagename/123/123456');
}
});
很快。像这样为其他人声明
通过这样做,是有可能的。
这部分是为了获取传递的URL值,t1、t2将获得与URL相关联的值。
var ourl = "", t1 = "", t2 = "";
if (window.history.replaceState) {
ourl = document.URL.toString();
var url = document.URL.toString().replace('http://', '');
var cnt = 0;
for (i = 0; i < url.length; i++) {
if (url[i] == '/') {
cnt++;
}
else if (cnt == 2) {
t1 += url[i];
}
else if (cnt == 3) {
t2 += url[i];
}
}
}
track
函数用作回调。 - Toni Michel CaubetlocalStorage
中存储一堆URL,然后将当前页面的location
、referrer
以及堆栈中最后访问的URL进行比较,以推断用户是否从网站中的另一个页面返回。请注意,在翻译过程中保持原文意思不变。 - pawel