如何编辑此功能以制作 3 件东西而不是 2 件

How to edit this function to make 3 things instead of 2

如果用户是第一次进入网站,我会使用这个带有缓存的功能 x 分钟重定向他,如果这是第二次按我现在要添加的按钮,如果这是最后 x 分钟内第三次做另一件事。

function getCookie(name) {
  const value = `; ${document.cookie}`;
  const parts = value.split(`; ${name}=`);
  if (parts.length === 2) return parts.pop().split(";").shift();
}

function setLastAccess() {
  const date = new Date();
  const expireMs = 0.5 * 60 * 1000; // number of minutes
  date.setTime(date.getTime() + expireMs);
  document.cookie = `lastAccess=${new Date().getTime()};expires=${date.toUTCString()};path=/`;
}

if (!getCookie('lastAccess')) {
  window.location.href = "http://google.com";
  setLastAccess(); // set your last access at the end
} else {
  setTimeout(function() {
    document.getElementById('button-login').click();
  }, 1000);
}

您可以在 localStorage 中维护一个计数器,每当用户访问该站点时,并更新它。检查计数,如果是 3,运行 你的逻辑。

如果需要传输到服务器也可以存入cookie

function getCookie(name) {
  const value = `; ${document.cookie}`;
  const parts = value.split(`; ${name}=`);
  if (parts.length === 2) return parts.pop().split(";").shift();
}

function setLastAccess() {
  const date = new Date();
  const expireMs = 0.5 * 60 * 1000; // number of minutes
  date.setTime(date.getTime() + expireMs);
  document.cookie = `lastAccess=${new Date().getTime()};expires=${date.toUTCString()};path=/`;
}

function numAccess() {
  if(!localStorage.getItem('accessCount')) {
    localStorage.setItem('accessCount', '1');
  } else {
    localStorage.setItem(+localStorage.getItem('accessCount') + 1)
  }
}

if (!getCookie('lastAccess')) {
  window.location.href = "http://google.com";
  setLastAccess(); // set your last access at the end
  numAccess();
} else {
  setTimeout(function() {
    numAccess();
    document.getElementById('button-login').click();
  }, 1000);
}

if(+localStorage.getItem('accessCount') === 3) {
  // Do some stuff
}