クリックでアニメーションしながら開閉するアコーディオン

Ads

Result

jQuery

//アクセス時の表示状態の処理
$("p:not(:first)").css("display", "none");
$("h3:first").addClass("select");
//クリックイベント
$("div h3").click(function() {
    var cont = $(this).next();
    if ($(cont).css("display") == "none") {
        //スライドエフェクト付きで表示・非表示
        $("p").slideUp("fast");
        $(cont).slideDown("fast");
        $("h3").removeClass("select");
        $(this).addClass("select");
    }
//ホバー時にclassを与えてスタイリング
}).hover(
function() {
    $(this).addClass("over");
},
function() {
    $(this).removeClass("over");
});

css

div{width:250px;margin:25px;}
.over ,
.select{background:yellow;}
 
p{background:#efefef;height:150px;}
 
h3{background:#f7f7f7;cursor:pointer;}
 
p,h3{padding:10px;}​

html

<div>
<h3>Panel 01</h3>
<p>content</p>
<h3>Panel 02</h3>
<p>content</p>
<h3>Panel 03</h3>
<p>content></p>
</div>​

via

jqueryでアコーディオンメニューを作る