Javascript 使用「;设置超时“;若要重复此功能,浏览器将显示";“正在加载…”;消息

Javascript 使用「;设置超时“;若要重复此功能,浏览器将显示";“正在加载…”;消息,javascript,jquery,html,security,browser,Javascript,Jquery,Html,Security,Browser,我有这个横幅旋转,这是工作良好,除了一个问题 这个旋转器首先遍历函数,当它到达“setTimeout”语句时,它会一次又一次地触发“cycle”函数 你们可能知道Firefox的左下角有一个状态栏,上面写着“正在加载”或“正在等待domain.com…”等等 问题是,;当您在Firefox中进入网站时,状态栏显示“已加载”,然后显示。8秒后(设置超时延迟),状态栏再次显示,并显示类似“从domain.com获取数据…”。它不会消失。 此消息很可能是由setTimeout代码引起的,该代码反复触发

我有这个横幅旋转,这是工作良好,除了一个问题

这个旋转器首先遍历函数,当它到达“setTimeout”语句时,它会一次又一次地触发“cycle”函数

你们可能知道Firefox的左下角有一个状态栏,上面写着“正在加载”或“正在等待domain.com…”等等

问题是,;当您在Firefox中进入网站时,状态栏显示“已加载”,然后显示。8秒后(设置超时延迟),状态栏再次显示,并显示类似“从domain.com获取数据…”。它不会消失。 此消息很可能是由
setTimeout
代码引起的,该代码反复触发功能
循环

有没有办法“解决”这个问题

这可能也发生在其他浏览器中,但到目前为止,我只在FF中进行了测试

   function ban_rot(){

    //First preload images
// counter
       var i = 0;

    // create object
    imageObj = new Image();

    // set image list
    images = new Array();
    images[0] = "../Graphics/adv/1.gif"
    images[1] = "../Graphics/adv/2.jpg"

    // start preloading
    for (i = 0; i <= images.length; i++) {
        imageObj.src = images[i];
    }
    ///////////////////////
    var links = new Array("http://www.link1.com", "http://www.link2.se");
    var alts = new Array("alt1", "alt2");
    var titles = new Array("title1", "title2");

    var counter = 0;
    var banner_div = document.getElementById("ban_rot");
    cycle();

    function cycle() {
        if (counter == links.length) {
            counter = 0;
        }
        else if (counter < links.length) {
            banner_div.innerHTML = '<a href=\"' + links[counter] + '\"><img src=\"' + images[counter] + '\" border=\"1px\" style=\"border-color:#000;\" alt=\"' + alts[counter] + '\" title=\"' + titles[counter] + '\"></a>';
            //increase counter
            counter++;
        }
        setTimeout(cycle, 8000);
    } //end cycle function
} //end ban_rot function
函数ban_rot(){
//首先预加载图像
//柜台
var i=0;
//创建对象
imageObj=新图像();
//设置图像列表
images=新数组();
图像[0]=“./Graphics/adv/1.gif”
图像[1]=“./Graphics/adv/2.jpg”
//开始预加载

对于(i=0;i浏览器显示加载指示器,因为您正在使其加载新图像。

您的代码仍然具有
setInterval()
;)哦,对不起,我实际上已将其更改为SetTimeout:)…立即更新Q,但为什么在加载映像后它不消失?此外,映像已预加载,因此为什么要从服务器加载映像?如果删除映像,是否仍会发生此情况?糟糕,我注意到错误…似乎是“for(I=0;I