我正在尝试区分页面点击和自动重新加载。自动重新加载是通过以下javascript完成的。
root
我正在尝试在上面的代码中设置一个隐藏变量,我正在尝试检查var pageReload = {
Initialize: function () {
window.setTimeout("location.reload(true);", 60000);
}
pageReload.Initialize();
中更改的值,以了解页面点击和自动重新加载之间的区别。
Page_PreRender
在PreRender之后加载javascript,我确定如何继续。
有什么想法吗?
答案 0 :(得分:0)
当您的函数重新加载页面时,您总是可以使用localStorage
来留下面包屑:
localStorage.setItem( 'page-reloaded', 'true' );
加载页面时,请检查面包屑:
var reloaded = localStorage.getItem('page-reloaded') || false;
然后清理:
localStorage.removeItem('page-reloaded');
答案 1 :(得分:0)
您可以添加"重新加载"而不只是执行reload()
。 URL的参数。如果我们使用this answer中的replaceUrlParam()
函数,我们可以说:
var pageReload = {
Initialize: function () {
window.setTimeout(
function() {
var url = replaceUrlParam(window.location.href, 'reloaded', '1');
window.location.href = url;
},
60000
);
}
}
pageReload.Initialize();
现在,当页面被自动重新加载(并且只有那时)时,查询字符串将包含" reloaded = 1"。
答案 2 :(得分:0)
感谢您的回复。
因为我使用的是asp.net,所以我能够从Request对象中捕获上一页单击URL,并从那里确定这是页面自动重新加载还是按钮点击。查询字符串重新加载选项也很棒,但我们并不想将其暴露给用户。这个解决方案适合我的情况。