Comments 17
Хорошо бы еще ссылочку на работающий пример.
+5
Даешь ссылку! Как раз сейчас занимаюсь табами на ui. Было бы интересно
+1
подскажите где разместить пример, хостинг для такого рода вещей чтоли, а вот примеры вставки в хтмл подготовил — но теперь кармы не хватает поправить пост :(
+1
Ну про то как подключать скрипт в хеаде и то что это делается после подключения jQuery я промолчу. А вот пример более простого в дальнейшей верстке HTML:
- <div class="flexitabs">
- <div class="tabs">
- <div class="tab">Таб1</div>
- <div class="tab">Таб2</div>
- <div class="tab">Таб3</div>
- </div>
- <div class="contents">
- <div class="content">Контент1</div>
- <div class="content">Контент2</div>
- <div class="content">Контент3</div>
- </div>
- </div>
-1
Этот пример семантически более правильный, но сложнее в верстке:
- <script type="text/javascript">
- $(function() {
- new Flexitabs({
- tabSelector: 'dt',
- contentSelector: 'dd',
- });
- });
- </script>
- <dl class="flexitabs">
- <dt>Таб1</dt>
- <dd>Контент1</dd>
- <dt>Таб2</dt>
- <dd>Контент2</dd>
- <dt>Таб3</dt>
- <dd>Контент3</dd>
- </dl>
0
Минимум что требуется в CSS — это прописать display:none для блоков с контентом табов, у них появится класс «inactive».
0
А чем он лучше UI tabs? (с jquery только первую неделю работаю, так-что уж простите если для кого-то разница очевидна).
+1
Лучше или хуже зависит от задач, которые вы решаете. Этот работает с jQuery 1.3+, не требует расширенной библиотеки jQuery UI, мало весит, но намного проще по функционалу. Если требуется динамическое добавление табов, навешивание обработчиков событий на табы, а также планируется плотная работа с другими компонентами UI — очевидно мое решение не подойдет. Задача этого скрипта «только сделать табы» без лишнего кода. Я буду и дальше его развивать в сторону уменьшения количества кода и повышения удобства использования.
+1
а что такое «Скрипт неразрушающий»?
0
Не пойму, а как заставить, чтоб по при загрузке открывалась не первая вкладка, а вторая-третья-десятая
0
Надо просто добавлять нужной вкладке класс «active» в хтмл.
0
вот почему то оно все же не хочет становится активной, т.е. первоначально при загрузке видно что вкладка активная, но когда происходит сам запуск скрипта
$(function() {
new Flexitabs();
})
он выставляет активность на первую вкладку, а та вкладка у которой было прописано active,
<div class='flexitabs'>
<div class='tabs'>
<div class='tab inactive'>Таб1</div>
<div class='tab active'>Таб2</div>
<div class='tab inactive'>Таб3</div>
</div>
<div class='contents'>
<div class='content inactive'>Контент1</div>
<div class='content active'>Контент2</div>
<div class='content inactive'>Контент3</div>
</div>
</div>
становится inactive
<div class='flexitabs'>
<div class='tabs'>
<div class='tab active'>Таб1</div>
<div class='tab inactive'>Таб2</div>
<div class='tab inactive'>Таб3</div>
</div>
<div class='contents'>
<div class='content active'>Контент1</div>
<div class='content inactive'>Контент2</div>
<div class='content inactive'>Контент3</div>
</div>
</div>
$(function() {
new Flexitabs();
})
он выставляет активность на первую вкладку, а та вкладка у которой было прописано active,
<div class='flexitabs'>
<div class='tabs'>
<div class='tab inactive'>Таб1</div>
<div class='tab active'>Таб2</div>
<div class='tab inactive'>Таб3</div>
</div>
<div class='contents'>
<div class='content inactive'>Контент1</div>
<div class='content active'>Контент2</div>
<div class='content inactive'>Контент3</div>
</div>
</div>
становится inactive
<div class='flexitabs'>
<div class='tabs'>
<div class='tab active'>Таб1</div>
<div class='tab inactive'>Таб2</div>
<div class='tab inactive'>Таб3</div>
</div>
<div class='contents'>
<div class='content active'>Контент1</div>
<div class='content inactive'>Контент2</div>
<div class='content inactive'>Контент3</div>
</div>
</div>
0
29 строка
if ($(storage.tabs[i]).hasClass(this.activeLinkClass))
внутри метода initialize не видно this.activeLinkClass поэтому не происходит правильного срабатывания, нужно както по иному обращаться
как пока не понял сам не силен в jquery (
if ($(storage.tabs[i]).hasClass(this.activeLinkClass))
внутри метода initialize не видно this.activeLinkClass поэтому не происходит правильного срабатывания, нужно както по иному обращаться
как пока не понял сам не силен в jquery (
+1
Sign up to leave a comment.
Flexitabs 1.1 — простой и гибкий скрипт для вкладок на jQuery