2014-02-04 3 views
-1

Я разрабатываю несколько вкладок на веб-сайте для отображения некоторых категорий с X количеством сообщений на каждой вкладке.Разные блоки вкладок Javascript

Я не знаю много о JavaScript, и я нашел, что это сделать эффекты на вкладках

<script type="text/javascript"> 
$(document).ready(function(){ 
    $("a.maintab").click(function() { // When a link is clicked 
     $(".tabactive").removeClass("tabactive"); // switch all tabs off 
     $(this).addClass("tabactive"); // switch this tab on 
     $(".maintabcontent").slideUp(); // slide all content up 
     var content_show = $(this).attr("title"); // slide this content up 
     $("#"+content_show).slideDown(); 
    }); 
    }); 
</script> 

Проблема заключается в том, когда у меня есть два блока, каждый из которых с различными вкладками, если я выбрал вкладку на втором блоке, 1-й - закрытие (слайды) и наоборот.

Я хочу, чтобы они всегда были открытыми, не матер, какая вкладка я выбрал из блоков. Можете ли вы мне помочь с помощью javascript? Кстати, слайд-эффекты не важны, вы можете включить toggle().

EDIT: http://paste2.org/Y3J1Lm7d

Вот это образец одного блока

+0

вам нужно разделить HTML образца также –

+0

Я не понимаю, если вы хотите, чтобы оба всегда были открытыми, в чем смысл наличия вкладок ...? – cbreezier

+0

@Crazysheep идея есть, имея категорию, и каждая вкладка устраивает ее по-разному. Например, просмотры, самые популярные (основанные на рейтинге), дата ... –

ответ

1

Так от того, что я могу собрать, вы просто хотите использовать вкладки, как «кнопки» фактически не влияя на «блоки» контента под?

В этом случае просто удалите строки, которые обрабатывают скользящий вверх и вниз контент.

Это Javascript должен работать

<script type="text/javascript"> 
$(document).ready(function(){ 
    $("a.maintab").click(function() { // When a link is clicked 
     $(".tabactive").removeClass("tabactive"); // switch all tabs off 
     $(this).addClass("tabactive"); // switch this tab on 

     var content_show = $(this).attr("title"); // id of the linked content 
     $("#"+content_show).siblings().slideUp(); // slide siblings up 
     $("#"+content_show).slideDown(); // slide itself down 
    }); 
    }); 
</script> 

Если эти два блока контента вкладки:

<div id="TabElements1"> 
    <div id="maintab1" class="maintabcontent"> 
     {custom category="2" aviable="main" from="0" limit="16" order="rating" cache="no"} 
    </div> 
    <div id="maintab2" class="maintabcontent"> 
     {custom category="3" aviable="main" from="0" limit="16" cache="no"} 
    </div> 
</div> 

<div id="TabElements2"> 
    <div id="maintab3" class="maintabcontent"> 
     {custom category="2" aviable="main" from="0" limit="16" order="rating" cache="no"} 
    </div> 
    <div id="maintab4" class="maintabcontent"> 
     {custom category="3" aviable="main" from="0" limit="16" cache="no"} 
    </div> 
</div> 

См скрипку: http://jsfiddle.net/Cz5te/2/

+0

Нет, это не работает. Это изменяет кнопки, но не отображает сам контент. Так что мне нужно что-то, что «тянет» соответствующий контент:/ Проблема со сценарием, который у меня есть, заключается в том, что когда я нажимаю кнопку 2-го блока, он будет сдвигать первый. Я не хочу, чтобы он ничего не делал. –

+0

@PedroLino Извините, я все еще очень смущен. Если ни один из блоков не скользит вверх, как они могут скользить вниз? – cbreezier

+0

Скольжение, прячет контент прямо? Поэтому у меня есть блок A с вкладками 1, 2 и блоком B с вкладками 3, 4. Вкладки 1 и 3 активны, когда я загружаю страницу. Теперь, если я нажимаю вкладку 4, все содержимое сглаживается, и появляется только 4. То, что я хочу, заключается в том, что когда я нажимаю одну вкладку на B, она не сдвигает вкладки на A. –

Смежные вопросы