减去功能时间

时间:2014-07-04 07:52:06

标签: javascript date onload onbeforeunload

我目前有两个函数可以捕获用户加载和离开页面的当前日期。

有没有办法合并这些功能,以便我能够发挥作用?

Ex. User loads the page at 30, and leaves at 45
Therefore, 45-30 = 15 minutes 

还有什么理由说我的卸载警报不适用于Safari?

JAVASCRIPT

<script type="text/javascript">
  window.onload = function () {
    var currentdate = new Date();
    var hour = currentdate.getHours();
    var minutes = currentdate.getMinutes(); 
    var seconds = currentdate.getSeconds();
    alert("starts at " + minutes + " minutes");
  }

  window.onbeforeunload = function (e) {
    var currentdate = new Date();
    var hour = currentdate.getHours();
    var minutes = currentdate.getMinutes(); 
    var seconds = currentdate.getSeconds();
    return ("leaves at " + minutes + " minutes");
  }
</script>

1 个答案:

答案 0 :(得分:1)

这样的东西?

var pageLoadTime;

window.addEventListener("load", function () {
    pageLoadTime = (new Date()).getTime();
});

window.addEventListener("beforeunload", function (e) {
    var pageUnloadTime = (new Date()).getTime();
    var secondsPassed = Math.round((pageUnloadTime - pageLoadTime) / 1000);

    var hoursPassed = Math.floor(secondsPassed / 3600);
    secondsPassed = secondsPassed % 3600;

    var minutesPassed = Math.floor(secondsPassed / 60);
    secondsPassed = secondsPassed % 60;

    alert(hoursPassed + " hour(s), " + minutesPassed + " minute(s), " + secondsPassed + " second(s)");
});