如何更改此代码,以便它只在没有鼠标移动时重定向

时间:2012-05-30 22:37:42

标签: javascript javascript-events

我有以下java脚本将用户重定向到另一个网站(在本例中为google)。

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

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

这可能吗?

1 个答案:

答案 0 :(得分:6)

这样的东西应该有用,虽然在较旧的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/进行演示,虽然跨框架安全性会阻止它在那里正常工作。