2012-01-05 4 views
1

に基づいてDIVを表示/非表示にする私は現在、この作業の一部を持っている:使用jqueryのリンクのhref

$('#marketing_button').click(function() { 
     $('#marketing').fadeIn('slow', function() { 
     // Animation complete 
     }); 
    }); 

私がID marketing_buttonを持つ要素をクリックした場合、それはマーケティングのdivが表示されます。

divとボタンのセットの基本的な表示/非表示を設定しています。私には5つの輪郭と5つの輪郭があります。各hrefには独自のIDがありますが、このコードを5回コピーするより簡単な方法があるようです。

また、新しいdivをクリックすると、他のdivを非表示にする必要があります。

構造は次のようになります。だからここ

<a href="marketing" id="marketing_button">MArketing</a> 
<a href="processing" id="processing_button">Processing</a> 
<a href="compliance" id="compliance_button">Compliance</a> 
... 
<div id="services"> 
<div id"marketing"></div> 
<div id"processing"></div> 
<div id"compliance"></div> 
... 
</div> 

具体的な質問があります:私は、コードを5回繰り返す必要がないように、どのように私はHREFにアクセスしない、

私は閉じない方法目に見えるdivと新しいもののフェード?

+0

可能複製を行うことができ、関連するアンカーにアクセスできることを今

<a href="marketing" id="marketing_button" class="abutton">MArketing</a> <a href="processing" id="processing_button" class="abutton">Processing</a> <a href="compliance" id="compliance_button" class="abutton">Compliance</a> 

[jqueryのを使用して、リンクのhrefを取得するには?](http://stackoverflow.com/questions/7818705/href-of-a-link-using-jqueryを取得する) –

+0

HTMLが壊れています –

答えて

0

可能な解決策がたくさんあります。すべての詳細を知らなくても、私はクラスでラッピングdivを配置します。リンクがクリックされると、その兄弟divをトグルします。

6

これを行うには、この機能を適用するすべてのアンカーを見つける方法が必要です。最も簡単な方法は、それらに共通のクラスを追加することです。あなたは、次の

$('a.abutton').click(function() { 
    var id = $(this).attr('href'); 
    $(id).fadeIn('slow', function() { 
    // Animation complete 
    }); 
}); 
関連する問題