所以,我在这里有一个代码,当我在活动浏览器选项卡中查看它时,它工作得非常好。但是,只要我最小化或切换浏览器的其他选项卡(顺便说一句),代码就开始提出问题。这是下面的代码:当Tab不活动时JavaScript不工作
var a = document.getElementById("slidermain");
var b = a.getElementsByTagName("IMG");
var len = b.length;
var noOpac = 0;
var fullOpac = 10;
var imgNumb = 0;
function initFade(count){
imgNumb = imgNumb + count;
if(imgNumb < 0){
imgNumb = len;
}
if(imgNumb > len){
imgNumb = 1;
}
elem = b[imgNumb-1];
startFadeEffect(elem);
}
function startFadeEffect(elem){
var opacSetting = noOpac/10;
if(noOpac > 10){
opacSetting = 1;
}
elem.style.opacity = opacSetting;
elem.style.display = "block";
noOpac++;
var timer = setTimeout(function() { startFadeEffect(elem); }, 55);
if(opacSetting == 1){
clearTimeout(timer);
elem.style.opacity = 1;
noOpac = 0;
setTimeout(function() { endFadeEffect(elem); }, 2000);
}
}
function endFadeEffect(elem){
var opacSetting = fullOpac/10;
if(fullOpac < 0){
opacSetting = 0;
}
elem.style.opacity = opacSetting;
fullOpac--;
var timer = setTimeout(function() { endFadeEffect(elem); }, 55);
if(opacSetting == 0){
clearTimeout(timer);
elem.style.opacity = 0;
elem.style.display = "none";
fullOpac = 10;
return false;
}
}
function autoFade(){
var loop = setInterval("initFade(1)", 4000);
}
请不就是我一直在寻找这个网站的答案,但主要是我发现的那些是基于JQuery的解决方案;不过,我正在寻找一种仅使用JavaScript的解决方案,我可能不必使用get new date函数。请不要将我的问题标记为重复,因为我已经做了好的研究。谢谢!
我必须看到此发布版本。听起来很有趣,从来没有发生过这种事。另外,我非常怀疑上面的代码是造成这种情况的原因。我必须是你提供的代码之外的问题。另外..你正在经历的问题是什么? –
[我怎样才能使setInterval也工作,当一个选项卡在Chrome中处于非活动状态?](http://stackoverflow.com/questions/5927284/how-can-i-make-setinterval-also-work-when-一个标签-是惰性-在铬)。另外,您需要详细描述“问题”。为什么你的问题**不是**重复的*“本网站几乎所有相关问题”*? – zero298
我告诉你我正在寻找只有JQuery的JS解决方案! :(另外,我正在寻找一种解决方案,不需要现在或之前的对象。 –