如何通过js判断用户是否进入了网站

当我们进入html网站时,需要判断用户是否进入网站,直到关闭浏览器只弹窗一次,或者显示一次广告。

如果弹窗太多用户体验不佳,但是广告是需要的,因为公司需要现金支持,但又不能让人反感。我们如何用js来实现呢?

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>如何通过js判断用户是否进入了网站 xinbiancheng.cn</title>
</head>
<body>
  <script>
    if (!sessionStorage.alertFlag) {
      sessionStorage.alertFlag = true;
      alert("欢迎来到 xinbiancheng.cn,我很乖哟,只弹窗一次");
    }
  </script>
</body>
</html>

源码分析如下:

sessionStorage存储的数据只有在同一个会话中的页面才能访问并且当会话结束后数据也随之销毁,所以我们用sessionStorage来存储数据到alertFlag中

当我们第一次打开HTML网站时,sessionStorage.alertFlag没有设置值,因此是可以通过if判断它是否第一次进入了网站

当我们第一次进入了网站后会立即设置sessionStorage.alertFlag = true; 之后sessionStorage.alertFlag会一直有值存在,除非关掉网页。

所以再次刷新网站程序是不会进入if代码块。

分析完毕