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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> аккордеон, (ступор, отчаяние) 
:(
    Опции темы
Evghenusi
Дата 14.10.2013, 00:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


майский жук
**


Профиль
Группа: Участник
Сообщений: 506
Регистрация: 3.8.2006
Где: Молдова, Кишинёв

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



Здравствуйте знатоки и пользователи Винграда smile 

Уже наверно больше месяца страдаю над скриптом аккордеоном, пилил пилил, плюнул, через две недели вернулся.
Из новенькго - подсчёт шагов, за которое блок должен раскрыться, сжаться. Раньше была статичная цифра, что мне казалось злом.

Тему создал потому что никак не справлюсь с подсчётами, видимо мозги мои в конец скисли, а проблема в том что в сумме блоки то меньше, то больше родителя.
(не дожидаясь пока один из блоков дойдёт до макс, переведите курсор на др)
Вот оно исчадие зла  smile 

Подскажите где я промахнулся, что не учёл или просто пристрелите.

p.s. если где-то не хватает комментария или ещё что, пишите, не стестняйтесь.
PM WWW   Вверх
ksnk
Дата 14.10.2013, 07:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

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



Возможно, более удачным решением будет массив "состояний анимации" вкладок - они расширяются/ сжимаются/остановлены+ до максимума/оптимума. Тогда на каждом шаге анимации достаточно проверить состояние и вычислить изменения размеров. Изменения производить с минимальных (уменьшение размеров) до максимальных, чтобы картинка "не прыгала" в броузере.

Такой подход позволит иметь единственную функцию анимации, а не пару конфликтующих, как сейчас. На каждом обработчике будет сидеть функция изменения состояний вкладок и старт анимации, если нужно.


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
Evghenusi
Дата 14.10.2013, 11:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


майский жук
**


Профиль
Группа: Участник
Сообщений: 506
Регистрация: 3.8.2006
Где: Молдова, Кишинёв

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



Цитата(ksnk @  14.10.2013,  07:37 Найти цитируемый пост)
массив "состояний анимации" вкладок - они расширяются/ сжимаются/остановлены+ до максимума/оптимума. Тогда на каждом шаге анимации достаточно проверить состояние и вычислить изменения размеров.

То есть надо добавить ещё один массив?, ведь остальное уже есть - проверка состояния и изменение размеров.


Цитата(ksnk @  14.10.2013,  07:37 Найти цитируемый пост)
Изменения производить с минимальных (уменьшение размеров) до максимальных, чтобы картинка "не прыгала" в броузере.

Так каждый ... может. Я поэтому и создал тему, потому что не могу сдружить блоки, что бы они при любом размере не "конфликтовали".


Цитата(ksnk @  14.10.2013,  07:37 Найти цитируемый пост)
функцию анимации

Вы говорите о сложении/вычитании? Видимо без примера не мне понять как добавив массив, вы избавитесь от изменения размеров каждого блока.
Почему-то мне кажется что вы пытаетесь два выражения "сложения" сократить, сэкономив несколько байт, при этом добавить массив и условие через которое он будет заполняться, что займёт ещё больше места.
PM WWW   Вверх
ksnk
Дата 14.10.2013, 15:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

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



Цитата(Evghenusi @  14.10.2013,  11:20 Найти цитируемый пост)
Вы говорите о сложении/вычитании?

Я говорю об одновременном существовании 2-х сразу механизмов анимации. В событии onmousein и onmouseout. Именно они конфликтуют.
 Должен остаться только один. 




--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
CruorVult
Дата 14.10.2013, 17:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

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



Это все можно сделать без единой строчки JS

http://jsfiddle.net/t4Yws/2/


PM MAIL Skype   Вверх
Evghenusi
Дата 14.10.2013, 19:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


майский жук
**


Профиль
Группа: Участник
Сообщений: 506
Регистрация: 3.8.2006
Где: Молдова, Кишинёв

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



Цитата(ksnk @  14.10.2013,  15:56 Найти цитируемый пост)
В событии onmousein и onmouseout. Именно они конфликтуют.

onmousein - не знал что есть такое событие, вот уже оправдалось создание темы, есть что почерпнуть.

Так при одном событии избранный блок/слайд/вкладка/нечто расширяется, а когда убираю стрелку мышки включается второе событие, которое возвращает всё на свои места, к размерам по умолчанию.


Цитата(ksnk @  14.10.2013,  15:56 Найти цитируемый пост)
Должен остаться только один. 

а кто будет возвращать блоки в стандартное состояние?

____________
Цитата(CruorVult @  14.10.2013,  17:02 Найти цитируемый пост)
Это все можно сделать без единой строчки JS

спасибо, симпатичное решение, вот только блоки не сжимаются.

Это сообщение отредактировал(а) Evghenusi - 14.10.2013, 19:58
PM WWW   Вверх
ksnk
Дата 15.10.2013, 00:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

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



Цитата(Evghenusi @  14.10.2013,  19:57 Найти цитируемый пост)
а кто будет возвращать блоки в стандартное состояние?

некоторые вещт проще написать, чем объяснить  smile 
http://jsfiddle.net/LLbLf/


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
Evghenusi
Дата 15.10.2013, 00:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


майский жук
**


Профиль
Группа: Участник
Сообщений: 506
Регистрация: 3.8.2006
Где: Молдова, Кишинёв

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



ауеть ....

Цитата(ksnk @  15.10.2013,  00:20 Найти цитируемый пост)
некоторые вещт проще написать, чем объяснить

видмо Да(

эххх, до идеала не хватает, что бы всё одно временно изменялось

Добавлено через 2 минуты и 12 секунд
там только восстановление не так как мне видится

Добавлено через 3 минуты и 41 секунду
спасибо, буду разбирать, чувствую там есть интересные моменты.
PM WWW   Вверх
ksnk
Дата 15.10.2013, 07:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

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



Цитата(Evghenusi @  15.10.2013,  00:23 Найти цитируемый пост)
там только восстановление не так как мне видится


Вот более другой вариант http://jsfiddle.net/5P5UQ/


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
CruorVult
Дата 15.10.2013, 10:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

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



Цитата(Evghenusi @  14.10.2013,  19:57 Найти цитируемый пост)
спасибо, симпатичное решение, вот только блоки не сжимаются.

Можно flex box заюзать, правда  не кросбраузерно. Ну как вариант, для остальных браузеров(которые не поддерживают flex box и transition) можно использовать ваш скрипт 

http://jsfiddle.net/t4Yws/4/
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




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


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

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