Javascript 使用onmousemove重置setTimeout()以重新开始(・・?;

Javascript 使用onmousemove重置setTimeout()以重新开始(・・?;,javascript,Javascript,当鼠标移动时,计时器功能取消==” 但实际上我希望它从一开始就开始计算 function w() { if (parent.C.location == "http://119.247.250.128/wasyoku/home/prime.html") { parent.C.location = "weather.html"; wTout = setTimeout(function(){ parent.C.location = "prime.html"; },

当鼠标移动时,计时器功能取消==” 但实际上我希望它从一开始就开始计算

function w()
{
    if (parent.C.location == "http://119.247.250.128/wasyoku/home/prime.html")
    {   parent.C.location = "weather.html";
        wTout = setTimeout(function(){ parent.C.location = "prime.html"; }, wT);
    }
    else { parent.C.location = "prime.html"; clearTimeout(wTout); }
}

document.onmousemove.clearTimeout(wTout);
我真的需要再次设置超时吗(・・?

wTout = setTimeout(function(){ parent.C.location = "prime.html"; }, wT);

是的,如果清除超时,则必须重新设置。
您可以做的另一件事是将变量设置为上次移动鼠标的时间,如果您在XX秒内移动鼠标,则可以在ontimeout上设置另一个settimeout

var sto = null;

function myTimeout() {
    window.clearTimeout(sto);
    sto = setTimeout(function() {
        console.log("setTimeout's working");
    }, 2000);
}

someElement.addEventListener('mousemove', function() {
    myTimeout();
});

是的,您必须再次设置计时器。重复