1. 在页面加载时记录访客的开始时间,记录在某一个变量中,如:
```javascript
var startTime;
startTime = new Date().getTime();
```
2. 用户离开页面时记录结束时间,记录在某一个变量中,如:
```javascript
var endTime;
endTime = new Date().getTime();
```
3. 最后可以得到用户在该页面上停留的时长,单位毫秒,如:
```javascript
var stayTime = endTime - startTime;
```
ChatGPT回复我的:
1. 通过ajax异步发送一个请求,把页面的开始时间和结束时间以及用户id传到后台保存,以便计算用户在这个页面的停留时长。
代码demo:
```
$(document).ready(function(){
$.ajax({
url:"xxx.php",
type:"post",
data:{
startTime: new Date(),
userId: 123456
}
});
});
$(window).on("unload",function(){
$.ajax({
url:"xxx.php",
type:"post",
data:{
endTime: new Date(),
userId: 123456
}
});
});
```
2. 在页面new Date();
window.onbeforeunload(function(){
let endTime=new Date();
let stayTime=endTime-startTime;
$.ajax({
url:"xxx.php",
type:"post",
data:{
stayTime: stayTime,
userId: 123456
}
});
})
```