如何更改此代码,使其仅在没有鼠标移动时才重定向

How To Alter This Code So That It Only Redirects If There Is No Mouse Movement

本文关键字:鼠标 移动 重定向 何更改 代码      更新时间:2023-09-26

我有以下JavaScript,它将用户重定向到另一个网站(在本例中为Google):

<script type="text/JavaScript">
window.setTimeout("location=('http://www.google.com');",5000);
</script>

但是,尽管我希望该网站重定向到另一个网站,但我不希望它无缘无故地重定向。我的目标是让网站在光标一段时间没有移动的情况下自动重定向。

这可能吗?

这样

的东西应该可以工作,尽管在较旧的MSIE上,您需要使用它们等效的addEventListener()

var timer = null;
function goAway() {
    clearTimeout(timer);
    timer = setTimeout(function() {
        window.location = 'http://www.google.com/';
    }, 5000);
}
window.addEventListener('mousemove', goAway, true);
goAway();  // start the first timer off

它所做的只是确保每次移动鼠标时,计时器都会被清除,然后再次启动。

演示在 http://jsfiddle.net/alnitak/sXwHY/,尽管跨帧安全性阻止它在那里正常工作。