<div id="headerr" onload ="picchange()" >
        <img id="welcomeimage1" height="130" width="720" alt="欢迎图片1" src="<%=rs("wellcomeimage1")%>" onclick ="upload(event,this)"  />
        <img id="welcomeimage2" height="130" width="720" alt="欢迎图片2" src="<%=rs("wellcomeimage2")%>" onclick ="upload(event,this)" style =" display:none" />
        <img id="welcomeimage3" height="130" width="720" alt="欢迎图片3" src="<%=rs("wellcomeimage3")%>" onclick ="upload(event,this)" style =" display:none" />
        </div>     
    </div>
如果是放在<div id="headerr" onload ="picchange()" >这样子,picchange()这个就不被激发,
如果放在<body onload ="picchange()" >这样就像死循环一样耗尽cpu和内存。
如果picchange()这个和html混写就没事,
但是我要把它放在js文件里。

解决方案 »

  1.   

    picchange()这个函数做了哪些事情?
    这句是什么意思?
      

  2.   

    欢迎图片1
    加上 style ="display:block" 
    试试看
      

  3.   


    picchange()做图片切换;
    就是当我把这个picchange()写在<body> 之间 </body> 就能完全正常工作,但是我想把picchange()它放到js文件里,这样看着整洁。
      

  4.   

    picchange()放在head里也不行吗?
    放在head里如果可以的话,考虑JS文件的路径是否正确再不行LZ把代码贴全一点吧
      

  5.   

    代码很简单:只是我想把它放在我的js文件里就不成
    <script type = "text/jscript"  >
            var NowFrame = 1;
            var MaxFrame = 3;
            var bStart = 0;        function fnToggle() {
                var next = NowFrame + 1;            if (next == MaxFrame + 1) {
                    NowFrame = MaxFrame;
                    next = 1;
                }            if (bStart == 1) {                oTransContainer = document.getElementById("headerr");
                    oTransContainer.filters[0].Apply();
                    //alert(next);
                    document.images['welcomeimage' + next].style.display = "";
                    document.images['welcomeimage' + NowFrame].style.display = "none";                oTransContainer.filters[0].Play(duration = 2);                if (NowFrame == MaxFrame)
                        NowFrame = 1;
                    else
                        NowFrame++;
                }
                else {                bStart = 1;
                    setTimeout('fnToggle()', 4500);                return;
                }
                setTimeout('fnToggle()', 4500);        }
            fnToggle();
        </script>
      

  6.   

      div哪里来的onload事件啊。你放body标签里执行onload的话也只是在加载页面的时候只执行一次,不会死循环的。
    改一下你的
     else {                bStart = 1;
                    setTimeout('fnToggle()', 4500);                return;
                }
                setTimeout('fnToggle()', 4500);        }
            fnToggle();
    吧,你这样写就一死循环
      

  7.   

    你这个一直在不断的调用fnToggle()  只有在else中有个return 语句  if里面没有  你的路径没有覆盖
    你这个 不论怎么执行 都会调用setTimeout('fnToggle()', 4500); 
      

  8.   

    ...试着把if{}else{}外面的setTimeout('fnToggle()', 4500);去掉看看,这样肯定死循环的哇