0

以前に、1 つのページで複数のスライド ショーを実行する際にいくつかの助けがありましたが、現在の問題は、ページ上でスライド ショーを動作させたり開始したりすることです。

HTML:

<p align="center"><font size="2"><b>Companies Supporting<br />R&M Research:</b><br  />         (click logo for company info)</font></p>
        <p align="center"><a href="#" target="_blank"><IMG SRC="./images/schlumberger.gif" WIDTH="180" HIGHT="200" BORDER="0" NAME="bannerad1"></a>
</p>
       <br />

            <hr noshade="noshade" size="0" color="#4c617e" />
 <br />

        <p align="center"><font size="1"><b>Thank you to the following for<br />their MARCON '12 support</b><br />(click logo for company info)</font></p>
        <p align="center"><a href="#" target="_blank"><IMG SRC="./marcon/images/arms_reliability_logo.jpg" WIDTH="180" HIGHT="200" BORDER="0"   NAME="bannerad2"></a>
       <br />

 <br />

        <p align="center"><a href="#" target="_blank"><IMG SRC="./marcon/images/arms_reliability_logo.jpg" WIDTH="180" HIGHT="200" BORDER="0"   NAME="bannerad3"></a>

Javascript

<script type="text/javascript">

var slideShow = function(imagesArray, hrefsArray, bannerad) {

var counter = -1, timer = null;

function banner() {
    counter++;
    if (counter > imagesArray.length-1) { counter = 0; }
    bannerad.src = imagesArray[counter];
    bannerad.parentNode.href = hrefsArray[counter];
}
timer = setInterval(banner, 6000);

};


var ads1 = [
    "./images/okuma.jpg",
    "./images/schlumberger.gif",
    "./images/uesystems_logo.jpg",
    "./images/brady.jpg",
    "./images/ats.png"
    ];


var newplace1 = [
    "http://www.okuma.com/home.html",
    "http://www.slb.com/",
    "http://www.uesystems.com/",
    "http://www.bradyid.com/bradyid/cms/contentView.do/6974/Visual-Workplace.html",
    "http://www.advancedtech.com/"
    ];


var ads2 = [
    "./marcon/images/arms_reliability_logo.jpg",
    "./marcon/images/brunson_logo.jpg",
    "./marcon/images/ctc_logo.jpg",
    "./marcon/images/descase_logo.jpg"
    ];


var newplace2 = [
    "http://www.globalreliability.com/home",
    "http://www.brunson.us",
    "http://www.ctconline.com/_home.aspx",
    "http://www.des-case.com"
    ];

var ads3 = [
    "./marcon/images/arms_reliability_logo.jpg",
    "./marcon/images/brunson_logo.jpg",
    "./marcon/images/ctc_logo.jpg",
    "./marcon/images/descase_logo.jpg"
    ];


var newplace3 = [
    "http://www.globalreliability.com/home",
    "http://www.brunson.us",
    "http://www.ctconline.com/_home.aspx",
    "http://www.des-case.com"
    ];


slideShow(ads1, newplace1, document.bannerad1);
slideShow(ads2, newplace2, document.bannerad2);
slideShow(ads3, newplace3, document.bannerad3);

</script>

私は使用してみました:

<body onload="banner();">

しかし、何らかの理由で機能しません。何か案は?

4

2 に答える 2

1
window.onload=function() {
  slideShow(ads1, newplace1, document.bannerad1);
  slideShow(ads2, newplace2, document.bannerad2);
  slideShow(ads3, newplace3, document.bannerad3);
}
于 2012-07-14T16:43:28.490 に答える
0

コメントを投稿するのに十分な評判がないので、これを回答に入れます...

mplungjan の答えは私にとっては問題なく機能しますが (コードでテストしただけです)、<body onload="banner();">または JS を削除する必要があり、エラーが発生します。

banner()は、スライドショーの「クラス」のローカル関数であり、外部からは見えません。さらに、呼び出す必要はありませsetInterval()ん。;)

于 2012-07-14T18:07:56.440 に答える