Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   JQuery Табы _____ (https://javascript.ru/forum/dom-window/34161-jquery-taby-_____.html)

Слейп 22.12.2012 14:52

JQuery Табы _____
 
<div class="spisok">
     <ul>
         <li><a class="" href="#text1">Кнопка №1</a></li>
         <li><a class="" href="#text2">Кнопка №2</a></li>
         <li><a class="" href="#text3">Кнопка №3</a></li>
         <li><a class="" href="#text4">Кнопка №4</a></li>
         <li><a class="" href="#text5">Кнопка №5</a></li>
         <li><a class="" href="#text6">Кнопка №6</a></li>
         <li><a class="" href="#text7">Кнопка №7</a></li>
         <li><a class="" href="#text8">Кнопка №8</a></li>
     </ul>
</div>

<div class="text">
     <div class="text1">Текст1</div>
     <div class="text2">Текст2</div>
     <div class="text3">Текст3</div>
     <div class="text4">Текст4</div>
     <div class="text5">Текст5</div>
     <div class="text6">Текст6</div>
     <div class="text7">Текст7</div>
     <div class="text8">Текст8</div>
</div>


<script type="text/javascript">
$(function () {
var arSpisok = $('div.text > div');
arSpisok.hide();

    $('div.spisok ul a').click(function () {
      
        arSpisok.filter(this.hash).show();
   
});
    
});

</script>


Есть кнопки по нажатию которых должен появляться текст, в соответсвии с нажатой кнопкой.
Поместил тексты в массив.
var arSpisok = $('div.text > div');

В функции клик
arSpisok.filter(this.hash).show();
не выполняется

Можно сделать большой код с скрытием/появлением каждого элемента по id или классу, но это говорят очень плохо
Как сделать так чтобы кнопка показывала именно тот текст, который соостветвует кнопке ? Мне просто в голову не приходит как это сделать обобщенно, чтобы по нажатию любого <a> определялся нужный элемент массива.(если я все правильно понимаю)

Deff 22.12.2012 15:25

<script type="text/javascript">
$('div.text > div').hide();;

$('div.spisok ul a').click(function () {
    $('div.text > div').hide();
    $('div.text > div').filter(this.hash).show();
   
});

</script>

Слейп 22.12.2012 15:54

Цитата:

Сообщение от Deff (Сообщение 222908)
<script type="text/javascript">
$('div.text > div').hide();;

$('div.spisok ul a').click(function () {
    $('div.text > div').hide();
    $('div.text > div').filter(this.hash).show();
   
});

</script>

Все равно не выводит

Слейп 22.12.2012 16:07

Все выводится!! Извиняюсь, когда Ваш код вставлял забыл class на id поменять на дивах текста. Спасибо большое Deff.


Часовой пояс GMT +3, время: 14:45.