先ほどのサンプルで使用したactivate()メソッドは最初だけでなく何度も利用することができます。サンプル06では2秒ごとに自動的にパネルが開閉されるようにしています。

サンプル06の実行結果

一定時間ごとに

パネルが開閉される

サンプル06

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
    <head>
        <meta http-equiv="content-type" content="text/html;charset=utf-8">
        <title>アコーディオン サンプル (一定時間ごとパネルを開閉)</title>
        <link rel="stylesheet" href="css/main.css" type="text/css">
        <script type="text/javascript" src="js/prototype.js"></script>
        <script type="text/javascript" src="js/effects.js"></script>
        <script type="text/javascript" src="js/accordion.js"></script>
        <script type="text/javascript"><!--
            var acc1Obj, count = 0;
            window.onload = function(){
                acc1Obj = new accordion("#acc1", { defaultSize : { height:200 } });
                setInterval("changePanel()", 2000);
            }
            function changePanel(){
                acc1Obj.activate($$("#acc1 .accordion_toggle")[count]);
                count++;
                if (count >= $$("#acc1 .accordion_toggle").length) count = 0;
            }
        // --></script>
    </head>
    <body>
    <h1>アコーディオン サンプル (一定時間ごとパネルを開閉)</h1>
    <div id="acc1">
        <h2 class="accordion_toggle">Accordionとは?</h2>
        <div class="accordion_content">
            Accordionは、その名のとおりアコーディオンのように開閉可能な領域を表示/非表示処理するライブラリです。<br>
            他のライブラリではアコーディオン処理を行うものがありましたが、prototype.js系ではRicoがサポートしていた程度でした。
        </div>
        <h2 class="accordion_toggle">依存ライブラリ</h2>
        <div class="accordion_content">
            Accordionはprototype.jsとscript.aculo.usのエフェクトライブラリを利用しています。パネルのタブ(ヘッダー)をクリックすることで開閉を行うことができます。この開閉アニメーションにscript.aculo.usライブラリを使用しています。
        </div>
        <h2 class="accordion_toggle">特長</h2>
        <div class="accordion_content">
            Accordionは縦方向に開閉するだけでなく横方向に開閉できます。
        </div>
    </div>
    </body>
</html>