jQuery 区分页面加载和刷新

发布于 2024-12-12 08:33:23 字数 191 浏览 0 评论 0原文

我需要区分 jQuery 中的页面加载和页面刷新。我不知道如何实现以下代码。

if( /* this page is loaded reffered */ )
    ++count ;
else if( /* this paged is refreshed */ )
    alert("refreshed");

I need to differentiate between page load and page refresh in jQuery. I have no idea how to implement the following code.

if( /* this page is loaded reffered */ )
    ++count ;
else if( /* this paged is refreshed */ )
    alert("refreshed");

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

葮薆情 2024-12-19 08:33:23

使用简单的计数器是行不通的。我将尝试用半伪代码来说明它

$(document).ready(function(){
  if(isPageLoadCookiePresent){
     //this is a page load
     setPageLoadCookie();
  }else{
     //this is a page refresh
  } 
});

。或者,您可以使用 HTML5 Web 存储 API,而不是设置 cookie。

saveButton.addEventListener('click', function () {
  window.localStorage.setItem('value', area.value);
  window.localStorage.setItem('timestamp', (new Date()).getTime());
}, false);
textarea.value = window.localStorage.getItem('value');

取自此处

Using a simple counter won't work. I'll try to illustrate it in semi-pseudo-code

$(document).ready(function(){
  if(isPageLoadCookiePresent){
     //this is a page load
     setPageLoadCookie();
  }else{
     //this is a page refresh
  } 
});

Alternatively, instead of setting a cookie, you could use the HTML5 web storage API.

saveButton.addEventListener('click', function () {
  window.localStorage.setItem('value', area.value);
  window.localStorage.setItem('timestamp', (new Date()).getTime());
}, false);
textarea.value = window.localStorage.getItem('value');

Taken from here

千纸鹤 2024-12-19 08:33:23

您可以使用散列来实现这一点:

var loc = window.location,
    isLoad = false;
if (String(loc.hash).indexOf('loaded') === -1) {
    loc.hash += 'loaded';
    isLoad = true;
}

然后只需检查 isLoad 来查看是否是刷新。

You could use the hash to implement this:

var loc = window.location,
    isLoad = false;
if (String(loc.hash).indexOf('loaded') === -1) {
    loc.hash += 'loaded';
    isLoad = true;
}

Then just check isLoad to see if it's a refresh or not.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文