2016-07-31 11 views
4

classactiveのタブの1つを指定したにもかかわらず、アクティブなタブはモーダルのときにアンダーラインを表示しません。しかし、タブの1つをクリックすると、それは作業を開始します。どうした?アクティブなタブがモーダルで動作しません

ここにはJSFiddleがあります。任意の助けをいただければ幸いです

... 
<a class="active" href="#test1">Test 1</a> 
... 

:ここ

そして、私は要素に適切class名前を与えているスポットです。

答えて

3

あなたはモーダルウィンドウのreadyオプションを使用して、タブを初期化する場合は下線が表示されます。このような

何か:ここ

$('.modal-trigger').leanModal({ 
    ready: function() { 
     $('ul.tabs').tabs(); 
    } 
}); 

はフィドルです:https://jsfiddle.net/powxw392/

あなたがモーダルウィンドウを開くときに、アニメーションのビットをしたい場合は、モーダル機能の外にタブの初期化を配置し、そのようにクリックイベントを追加:

$('ul.tabs').tabs(); 
$('.modal-trigger').leanModal({ 
    ready: function() { 
     $('#firstTab').click(); 
    } 
}); 

フィドル:https://jsfiddle.net/qj0r84dr/

両方のオプションを使用すると、タブからタブに移動する下線のアニメーションを保持できます。

0

アンダーラインが表示されない理由は、アンダーラインがないためです。
あなたが見ている行は、indicatorのクラスを持つdivで、これまでプログラムでタブが選択されています。ここでの問題は、あなたがアニメーションを失うということです

.tabs .indicator { display: none; } 
.tabs .tab a.active { border-bottom: 2px solid #f6b2b5; } 

私はそれを見る方法、あなたはどちらか独自のCSSとインジケータを上書きすることができます。

また手動インジケータの位置を設定することができます。

$('#modal1').find('.indicator').attr('style', 'right: 415.333px; left: 0px;'); 

この1の問題は、それは少し汚いということです。

Updated fiddle (with the second choice).

関連する問題