好的,所以我在我的 AJAX 应用程序中有一个功能,它会在一定时间后在角落里粘贴一个工具提示,以帮助提示用户他们正在做什么。如果用户单击其他地方,还有第二个功能可以清除超时,因为该工具提示将不再相关。
我现在开始遇到在超时时设置多个工具提示的问题,设置它们很好,但如果用户继续前进,我找不到取消它们的有效方法。
目前我的代码看起来像这样
var tuttimer = new Array();
function showtooltip(uniqueid, delay){
tuttimer[uniqueid] = setTimeout(function(){
//Create tooltip code here
},delay);
}
function clearTuttimer(){
if(typeof tuttimer != 'undefined'){
for (var i = 0; i < tuttimer.length; i++) {
clearTimeout(tuttimer[i]);
}
}
}
因此,该tuttimer
数组是在页面加载时创建的,然后每当用户执行某些操作时,都会showtooltip()
调用工具提示来显示该函数,并被赋予唯一的 ID 和延迟时间。
但是,如果用户要继续做其他事情,它会调用该函数clearTuttimer()
来检查数组是否存在,然后循环并清除每个单独的超时。
但是,这是行不通的。希望有人能指出我正确的方向。非常感谢。