Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> jQuery меню-аккордеон, Расширение функционала 
V
    Опции темы
Pena
  Дата 8.8.2014, 14:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


КорнеплодЪ
*


Профиль
Группа: Участник
Сообщений: 161
Регистрация: 20.4.2006
Где: эРэФия, аул Москв а...

Репутация: нет
Всего: нет



Долгое время пользовался этим меню:
В шапке -
Код

var jQuery_Latest = jQuery;
(function(){
 $(document).ready(function(){
  $('H3').click(function(){
   $(this).next('Ul').slideToggle('medium').siblings('Ul').slideUp('slow');
  });
 });
}(jQuery_Latest));


CSS -
Код

Ul{ display: none }


HTML5 - 
Код

<h3>1</h3>
<ul>
 <li><a href='.../1.1.html' target='_self'>1.1</a></li>
 <li><a href='.../1.2.html' target='_self'>1.2</a></li>
 <li><a href='.../1.3.html' target='_self'>1.3</a></li>
</ul>
<h3>2</h3>
<ul>
 <li><a href='.../2.1.html' target='_self'>2.1</a></li>
 <li><a href='.../2.2.html' target='_self'>2.2</a></li>
 <li><a href='.../2.3.html' target='_self'>2.3</a></li>
 <li><a href='.../2.4.html' target='_self'>2.4</a></li>
</ul>
<h3>3</h3>


Встала задача добавить маркеры к заголовкам (<h3>), имеющим раскрывающиеся подуровни (<ul>). Так чтобы у нераскрытого был один маркер, а у закрытого другой.

Помогите доработать код, пожалуйста - второй день убиваю... у самого не получается.

Это сообщение отредактировал(а) Aliance - 11.8.2014, 08:15
--------------------
Самовар по всем вопросам - сильно не ругайте 
PM   Вверх
Aliance
Дата 11.8.2014, 08:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 7
Всего: 137



Ээ, по клику на 1 происходит сперва скрытие 1.*, а потом их открытие? Зачем такое и что должно быть? Может быть карусель - все блоки всегда скрыты, кроме активного? Тогда код изначально должен быть другой немного.

По поводу самой задачи - что конкретно нужно? Поменять текст внутри тегов h3? При активном меню один - при неактивном другой? У вас же внутри колбека клика есть доступ к h3 через $(this).text('bla bla bla')
PM MAIL WWW ICQ Skype   Вверх
Pena
Дата 11.8.2014, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


КорнеплодЪ
*


Профиль
Группа: Участник
Сообщений: 161
Регистрация: 20.4.2006
Где: эРэФия, аул Москв а...

Репутация: нет
Всего: нет



"по клику на 1 происходит сперва скрытие 1.*, а потом их открытие?" - нет, всё скрыто, при клике на 1 выпадает сразу за ним следующий список (<ul>), а все открытые ранее списки закрываются. Т.е. так и работает "карусель - все блоки всегда скрыты, кроме активного"

А можно с примером кода? Я например пытался так: я разместил два изображения нужных маркеров и пытался играться с show() \ hide()  - фиг

Это сообщение отредактировал(а) Pena - 11.8.2014, 13:13
--------------------
Самовар по всем вопросам - сильно не ругайте 
PM   Вверх
Aliance
Дата 11.8.2014, 14:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 7
Всего: 137



http://jsfiddle.net/Aliance/c0ru9by3/

Добавлено через 58 секунд
Но в целом это велосипед: http://jqueryui.com/accordion/
PM MAIL WWW ICQ Skype   Вверх
Pena
Дата 11.8.2014, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


КорнеплодЪ
*


Профиль
Группа: Участник
Сообщений: 161
Регистрация: 20.4.2006
Где: эРэФия, аул Москв а...

Репутация: нет
Всего: нет



Еее... благодарю за подсказку и наводку на полезный ресурс, в итоге получилось это

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

Это сообщение отредактировал(а) Pena - 11.8.2014, 19:32
--------------------
Самовар по всем вопросам - сильно не ругайте 
PM   Вверх
Aliance
Дата 12.8.2014, 07:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 7
Всего: 137



У вас там в одном случае next, а в другом siblings - лучше бы определится и использовать что-то одно. Кроме того, зачем вы пишете селекторы в верхнем регистре? smile
PM MAIL WWW ICQ Skype   Вверх
Pena
Дата 12.8.2014, 09:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


КорнеплодЪ
*


Профиль
Группа: Участник
Сообщений: 161
Регистрация: 20.4.2006
Где: эРэФия, аул Москв а...

Репутация: нет
Всего: нет



Исправил, благодарю. 
Просто так привык в CSS писать... это же не ошибка?
--------------------
Самовар по всем вопросам - сильно не ругайте 
PM   Вверх
Aliance
Дата 12.8.2014, 10:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 7
Всего: 137



Не ошибка, но есть негласные правила стиля программирования (coding style), и html теги, jquery/css селекторы лучше писать в нижнем регистре.
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Применение библиотек | Следующая тема »


 




[ Время генерации скрипта: 0.0891 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.