我有一个Javascript setInterval函数,可以像计时器一样显示。我想显示单击“下一个”按钮时计时器上的时间,以便用户可以看到他们在某个页面上花费了多长时间。我不确定如何将setInterval与click事件连接。这是我所拥有的,但是不起作用。
let timerId = setInterval(function () {
document.getElementById("seconds").innerHTML = pad(++sec % 60);
document.getElementById("minutes").innerHTML = pad(parseInt(sec / 60, 10));
}, 1000);
function myFunction() {
alert document.getElementById("timerId").innerHTML = "Time passed: " + timerId);
}
答案 0 :(得分:1)
首先,最好将setInterval方法放在函数内。之后,您可以将函数作为参数提供给事件侦听器。
您的代码应如下所示
mappedBy
答案 1 :(得分:1)
这应该可以解决您的问题。
Property property = properties.get(name);
var initialTime = new Date().getTime();
var timeSpent='0:00';
var timeElement = document.getElementById("time");
timeElement.innerHTML = timeSpent;
let timerId = setInterval(function () {
var currentTime = new Date().getTime();
timeSpent = millisToMinutesAndSeconds(currentTime - initialTime)
timeElement.innerHTML = timeSpent;
}, 1000);
function millisToMinutesAndSeconds(millis) {
var minutes = Math.floor(millis / 60000);
var seconds = ((millis % 60000) / 1000).toFixed(0);
return minutes + ":" + (seconds < 10 ? '0' : '') + seconds;
}
function alertFn(){alert(timeSpent)}
document.getElementById("rightButton").addEventListener('click',alertFn);
document.getElementById("wrongButton").addEventListener('click',alertFn);