JSFiddle - React, Tailwind, and code Playground

by bohdantheone

HTML

<h1>Цитаты</h1>
<div>
<!-- Это сами вкладки -->
    <ul class="tabNavigation">
        <li><a class="" href="#first">Д.Огилви</a></li>
        <li><a class="" href="#second">Миллер</a></li>
        <li><a class="" href="#third">Черчилль</a></li>
    </ul>
<!-- Это контейнеры содержимого --> 
<div class="tabs">    
    <div id="first">
        <h2>Д.Огилви</h2>
        <p>Лучший способ превратить работника в генератор идей это возложить на него самую высокую ответственность.</p>
    </div>
    <div id="second">
        <h2>Миллер</h2>
        <p>Деньги не имеют значения — пока они у вас есть.</p>
    </div>
    <div id="third">
        <h2>Черчилль</h2>
        <p>Пессимист видит трудности при каждой возможности; оптимист в каждой трудности видит возможности.</p>
    </div>
    <div id="fourth">
        <h2>Вашингтон</h2>
        <p>Пессимист видит трудности при каждой возможности; оптимист в каждой трудности видит возможности.</p>
    </div>
</div>

CSS

div.tabs {
background: #333;
padding: 1em;
}



ul.tabNavigation {
list-style: none;
margin: 0;
padding: 0;
}

ul.tabNavigation li {
display: inline;
}

ul.tabNavigation li a {
padding: 3px 9px;
background-color: #666;
color: #000;
text-decoration: none;
}

ul.tabNavigation li a.selected,
ul.tabNavigation li a.selected:hover {
background: #FFF;
color: #000;
}

ul.tabNavigation li a:hover {
background: #ccc;
color: #000;
}

ul.tabNavigation li a:focus {
outline: 0;
}

div.tabs div {
padding: 5px;
margin-top: 3px;
border: 1px solid #FFF;
background: #FFF;
}

div.tabs div h2 {
margin-top: 0;
}

JavaScript

$(function () {
    var tabContainers = $('div.tabs > div'); // получаем массив контейнеров
    tabContainers.hide().filter(':first').show(); // прячем все, кроме первого
    // далее обрабатывается клик по вкладке
    $('ul.tabNavigation a').click(function () {
        tabContainers.hide(); // прячем все табы
        tabContainers.filter(this.hash).show(); // показываем содержимое текущего
        $('ul.tabNavigation a').removeClass('selected'); // у всех убираем класс 'selected'
        $(this).addClass('selected'); // текушей вкладке добавляем класс 'selected'
        return false;
    }).filter(':first').click();
});