Javascript 在以下更改中的if-else条件下需要设置超时

Javascript 在以下更改中的if-else条件下需要设置超时,javascript,angular,Javascript,Angular,ngonit() { 这个.timeout(); } //计时器 定时器:任意; 时间(){ this.timer=setTimeout(()=>{ console.log(this.timer); 这个.openDialog(); }, 10000) console.log(this.timer); } 超时(){ document.addEventListener('keypress',()=>{ clearTimeout(this.timer); 这个时间(); }); document.

ngonit()
{
这个.timeout();
}
//计时器
定时器:任意;
时间(){
this.timer=setTimeout(()=>{
console.log(this.timer);
这个.openDialog();
}, 10000)
console.log(this.timer);
}
超时(){
document.addEventListener('keypress',()=>{
clearTimeout(this.timer);
这个时间();
});
document.addEventListener('click',()=>{
clearTimeout(this.timer);
这个时间();
});
document.addEventListener('mousemove',()=>{
clearTimeout(this.timer);
这个时间();
})

}
启动
var定时器:任意在javascript中无效

您的计时器需要设置为
5000
,即5秒,然后在计时器内始终清除计时器(以避免多次单击调用同一函数),当计时器达到5秒时,启动另一个1000毫秒的计时器,此计时器将调用
out()
函数

Inside
out()
您不必每次都向文档中添加侦听器,只需使用boolen检查是否已经添加了侦听器。只添加一次侦听器就足够了

另外,由于
session()
是一个函数,因此要从一开始调用它,必须至少调用该函数一次

var定时器;
var listenersAdded=false;
功能会话(){
clearTimeout(this.timer)
this.timer=setTimeout(()=>{
log(“请访问您将在1秒钟内注销的页面”);
this.timer=setTimeout(()=>out(),1000)
}, 5000)  
}
函数输出(){
控制台日志(“注销”);
如果(listenersAdded!=真){
listenersAdded=true
文件。附录列表(“按键”,会话);
文档。addEventListener(“单击”,会话);
}
}

session()
变量计时器:任意
不是有效的JavaScript
cosnole.log
不是有效的JavaScript。在发布代码之前,可能需要校对或尝试运行代码。tommyO我已更新,请检查..ngu我已更新,请检查。我希望用户在本页上不需要擤鼻涕。lolCalvin Nunes,我已经更新了代码中的更改请检查我有趣的angularwell,因为你从一个问题开始,然后你完全修改它当人们开始回答和帮助时,我不会修改我的答案。另外,如果你告诉我这是有角度的,我也不会回答,因为我不知道angularCalvin Nunes这现在很好,但当我尽快加载时,它会收到注销消息Calvin Nunes,非常感谢…但是人们在上面询问,这就是为什么我更新了弹出式Calvin Nunes的问题,假设用户单击“确定”,我想取消此计时器this.timer=setTimeout(()=>out(),1000)。。