As the question states:
setTimeout(myFunc, delay);
myFunc(){
//do something
}
So can I consider that if myFunc() is called after the delay time, that ensures that the user was on the page for delay amount of time?
Basically, I wanted to execute a function after making sure that the user was on the page for a given amount of time? So is this the correct way of doing it with javascript or is there an even better option to do it?
Page_Visibility_API allows you to check if user is on page:
https://developer.mozilla.org/en-US/docs/Web/API/Page_Visibility_API
AND it also has method visibilitychange which is the preferable way probably.
Example: Pausing music on transitioning to hidden
document.addEventListener("visibilitychange", function() {
if (document.visibilityState === 'visible') {
backgroundMusic.play();
} else {
backgroundMusic.pause();
}
});