代码如下,为啥不能图片切换,请指教,谢谢!!!var imgUrl=new Array();
var imgLink=new Array();
var adNum=0;
imgUrl[1]='upfiles/qyzz2.jpg';
imgLink[1]='upfiles/qyzz2.jpg';
imgUrl[2]='upfiles/qyzz1.JPG';
imgLink[2]='upfiles/qyzz1.jpg';
imgUrl[3]='upfiles/qyzz3.jpg';
imgLink[3]='upfiles/qyzz3.jpg';
imgUrl[4]='upfiles/qyzz4.jpg';
imgLink[4]='upfiles/qyzz4.jpg';
var j=0;
for (i=1;i<=4;i++) {
if( (imgUrl[i]!='') && (imgLink[i]!='') ) {
j++;
} else {
break;
}
}
var imgPre=new Array();
function playTran()
{
if (document.all)
imgInit.filters.revealTrans.play();
}
var key=0;
function nextAd(){
if(adNum<j)adNum++ ;
else adNum=1;
if( key==0 ){
key=1;
} else if (document.all){
imgInit.filters.revealTrans.Transition=6;
imgInit.filters.revealTrans.apply();
playTran();
}
document.images.imgInit.src=imgUrl[adNum];
theTimer=setTimeout('nextAd()', 6000);
}
function goUrl(){
jumpUrl=imgLink[adNum];
jumpTarget='_blank';
if (jumpUrl != ''){
if (jumpTarget != '') 
window.open(jumpUrl,jumpTarget);
else
location.href=jumpUrl;
}
}
document.write ('<a href="javascript:goUrl()"><img style="FILTER: revealTrans(duration=2,transition=20);border:0px;" src="javascript:nextAd()" width=240 height=170 border=1 class=img01 name=imgInit></a>')

解决方案 »

  1.   

    在IE7下测试没有问题。
    间隔时间比较长,
    你可以试一下下面的sample.<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            <title></title>
            <style type="text/css">
            </style>
        </head>
        <body>
            <script type="text/javascript">
                var imgUrl = new Array();
                var imgLink = new Array();
                var adNum = 0;
                imgUrl[1] = '1.jpg';
                imgLink[1] = '1.jpg';
                imgUrl[2] = '2.JPG';
                imgLink[2] = '2.jpg';
                imgUrl[3] = '3.jpg';
                imgLink[3] = '3.jpg';
                imgUrl[4] = '4.jpg';
                imgLink[4] = '4.jpg';
                var j = 0;            for (i = 1; i <= 4; i++) {
                    if ((imgUrl[i] != '') && (imgLink[i] != '')) {
                        j++;
                    }
                    else {
                        break;
                    }
                }            var imgPre = new Array();
                function playTran(){
                    if (document.all) 
                        imgInit.filters.revealTrans.play();
                }
                
                var key = 0;
                function nextAd(){
                    if (adNum < j) 
                        adNum++;
                    else 
                        adNum = 1;
                    if (key == 0) {
                        key = 1;
                    }
                    else 
                        if (document.all) {
                            imgInit.filters.revealTrans.Transition = 6;
                            imgInit.filters.revealTrans.apply();
                            playTran();
                        }
                    document.images.imgInit.src = imgUrl[adNum];
                    theTimer = setTimeout('nextAd()', 4000);
                }
                
                function goUrl(){
                    jumpUrl = imgLink[adNum];
                    jumpTarget = '_blank';
                    if (jumpUrl != '') {
                        if (jumpTarget != '') 
                            window.open(jumpUrl, jumpTarget);
                        else 
                            location.href = jumpUrl;
                    }
                }
                
                document.write(' <a href="javascript:goUrl()"> <img style="FILTER: revealTrans(duration=2,transition=20);border:0px;" src="javascript:nextAd()" width=240 height=170 border=1 class=img01 name=imgInit> </a>');
            </script>
        </body>
    </html>
      

  2.   

    又测试了一下,确实是有问题。
    IE单独执行的时候不好用。
    src="javascript:nextAd()"中的函数不能执行。
    你这样改一下吧。<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            <title></title>
            <style type="text/css">
            </style>
        </head>
        <body>
            <script type="text/javascript">
                var imgUrl = new Array();
                var imgLink = new Array();
                var adNum = 0;            imgUrl[1] = '1.jpg';
                imgLink[1] = '1.jpg';
                imgUrl[2] = '2.JPG';
                imgLink[2] = '2.jpg';
                imgUrl[3] = '3.jpg';
                imgLink[3] = '3.jpg';
                imgUrl[4] = '4.jpg';
                imgLink[4] = '4.jpg';
                var j = 0;            for (i = 1; i <= 4; i++) {
                    if ((imgUrl[i] != '') && (imgLink[i] != '')) {
                        j++;
                    }
                    else {
                        break;
                    }
                }            var imgPre = new Array();
                function playTran(){
                    if (document.all) 
                        imgInit.filters.revealTrans.play();
                }
                
                var key = 0;
                function nextAd(){
                    if (adNum < j) 
                        adNum++;
                    else 
                        adNum = 1;
                    if (key == 0) {
                        key = 1;
                    }
                    else 
                        if (document.all) {
                            imgInit.filters.revealTrans.Transition = 6;
                            imgInit.filters.revealTrans.apply();
                            playTran();
                        }
                    document.images.imgInit.src = imgUrl[adNum];
                    theTimer = setTimeout('nextAd()', 4000);
                }
                
                function goUrl(){
                    jumpUrl = imgLink[adNum];
                    jumpTarget = '_blank';
                    if (jumpUrl != '') {
                        if (jumpTarget != '') 
                            window.open(jumpUrl, jumpTarget);
                        else 
                            location.href = jumpUrl;
                    }
                }

    window.onload = function(){
    nextAd();
    }
                
                document.write(' <a href="javascript:goUrl()"> <img id="imgInit" style="FILTER: revealTrans(duration=2,transition=20);border:0px;" width=240 height=170 border=1 class=img01 name=imgInit> </a>');
            </script>
        </body>
    </html>
      

  3.   

    上面兄弟,你的办法仍然不能自动切换,迷惑。
    我是在.net2003环境中运行的,但在asp环境下可以自由切换,迷惑!!!