2013-10-02 98 views
0

我有一个函数使用setInterval()来遍历几张图片。它在Firefox和IE中运行正常(如果它在我的电脑上)。如果我在Internet上上传它,虽然IE不会问我是否想要允许ActiveX控件(而是我会得到一个“默认浏览器”弹出窗口),并且它们保持禁用状态,从而使我的setInterval不起作用。函数执行正确onClick,但没有setInterval在IE中没有activeX弹出窗口

setInterval(function(){ 
if (status == "on"){ 

$('#NavigationSites li').removeClass('active'); 
    $('#NavigationSites li:eq('+ x +')').addClass('active'); 
    $('#TechnologiesWork').html('<img src = "img/'+x+'BackgroundTech.png"/> '); 
    $('#PicSiteArena').hide().html('<a href = "#"><img src =  "img/'+x+'Arena.png"/></a> ').fadeIn('slow'); 
    x++; 
    if (x == "5"){ 
    x = "0"; 
}//status on 
    } 
}, 5000); 

回答

0

奇怪的是,问题被发现是在IF块(发现适当的实验)。如果你使用一个带有布尔值的变量(true和false),它也可以在互联网上的IE中使用。

setInterval(function(){ 
     if (on){ 
     $('#NavigationSites li').removeClass('active'); 
     $('#NavigationSites li:eq('+ x +')').addClass('active'); 
     $('#TechnologiesWork').html('<img src = "img/'+x+'BackgroundTech.png"/> '); 
     $('#PicSiteArena').hide().html('<a href = "#"><img src = "img/'+x+'Arena.png"/></a> ').fadeIn('slow'); 
     x++; 
      if (x == "5"){ 
       x = "0"; 
      } 
     } 
     }, 5000); 


$('#LastSitesArena').mouseenter(function(){ 
on = !on; 
}); 
$('#LastSitesArena').mouseleave(function(){ 
on = true; 
});