2012-01-08 11 views
0

jQuery UI Tab divsが多数あります。すべてのタブ/ divに共通するマークアップを持つ方法はありますか?具体的には、保存ボタンとキャンセルボタンを追加したいのですが、実際にマークアップには何かが含まれる可能性があります。jQueryタブの「common」マークアップ

私が必要な場合は、すべて私のタブ間でこれらを複製または単に外側のdiv内のマークアップを追加し、いくつかの負のマージン(タブエリアのすべての内に移動を与えることができます。

+0

あなたが既に提案しているように、それを外側のdivに配置してみませんか?それはおそらく、もし私が行くつもりなら、私はそれをやるだろう。 – doogle

+0

タブの一部である外側divに配置すると、レンダリングされません。タブ構造の一部ではないdivにコンテンツを配置してから、余白を追加します。 – andleer

+0

私は、一般的なマークアップをタブコントロールの外に置いているだけです。それがすべてに共通する場合、それがタブコントロールの一部であることは理にかなっていません。 – doogle

答えて

1

をたぶんあなたはcommomを追加することができます単一のdiv内のコンテンツと、タブのプラグインを呼び出す前に、単にコンテンツブロックのそれぞれに、共通のマークアップを追加します。このような何か:。

マークアップ:

<div id="commonContent"> 
    <p>Some common stuff</p> 
</div> 

<ul id="tabNav"> 
    <li><a href="#tabContent1">Tab1</a></li> 
    <li><a href="#tabContent2">Tab2</a></li> 
    <li><a href="#tabContent3">Tab3</a></li> 
</ul> 

<div id="tabContent1" class="tabContent"> 
    <p>Content 1</p> 
</div> 
<div id="tabContent2" class="tabContent"> 
    <p>Content 2</p> 
</div> 
<div id="tabContent3" class="tabContent"> 
    <p>Content 3</p> 
</div> 

<script type="text/javascript"> 
    (function($){ 
     $(document).ready(function(){ 
      $('#commonContent').hide().appendTo($('.tabContent')); 
      $('#tabNav').tabs(); 
     }); 
    })(jQuery); 
</script> 

だけのアイデアを与えて、テストしたわけではありません。

+0

+1興味深いアプローチですが、それでもコンテンツは複製されます...私は、タブの外側にコンテンツを配置してからマイナスのマージンを追加することで、私の現在のソリューションがより好きです。 – andleer

+0

真実ですが、重複しますが、マークアップではなくDOMレベルでのみ発生します。あなたのアプローチは確かにリソース利用の意味ではより経済的です。 +1に感謝します。乾杯! –