2016-11-24 15 views
0

私は関連するアコーディオンタブ(TAB 2)を開くボタンを持っています。最初にボタンをクリックするとtab2が開き、戻って2回クリックするとTAB2に)が、私はそれを第3の時間は何もクリックしない場合はどうなる:Onclick関数が2回以上働いていません

マイボタン:

<a onclick="changeTab2();"> 

My機能:

<script> 

var tabHeight = $('.tab.active').height(); 
function animateTabHeight() { 
    tabHeight = $('.tab.active').height(); 
    $('.tabs-content').stop().css({ 
     height: '100' + '%' 
    }); 
} 


function changeTab2() { 
    var getTabId = $('.tabs-header .active a').attr('tab-id'); 
    $('.tab').stop().fadeOut(300, function() { 
     $(this).removeClass('active'); 
    }).hide(); 
    $('.tab[tab-id=' + 2 + ']').stop().fadeIn(300, function() { 
     $(this).addClass('active'); 
     animateTabHeight(); 
    }); 
} 

</script> 

それが動作しなくなった理由には考え。

+0

いくつのタブがありますか? – user2085143

+0

3つのタブがありますが、このボタンはtab-id-2のみを開きます – itguyme

+0

コンソールにはどのようなエラーが返されますか? –

答えて

0

クリックイベントは、ページの読み込み時にのみバインドされます。それが最初に働いている理由です。タブを開くたびにクリック機能を動的にバインドしてください。 idをaに設定し、クリックイベントをバインドします。

<a class="t1" id="subDiv1"></a> 

    $('#subDiv1').unbind("click"); 
    $('#subDiv1').bind("click",function(){ 

     // place your code here 

    }); 

これを#tab-1クリック機能の中で呼び出します。

+0

ワフーそれは動作します!とても感謝しています! – itguyme

関連する問題