Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.07.2015, 11:19
Аватар для jasper-blondin
Аспирант
Отправить личное сообщение для jasper-blondin Посмотреть профиль Найти все сообщения от jasper-blondin
 
Регистрация: 11.07.2015
Сообщений: 33

overflow по окончании анимации
Здравствуйте!

Нужна помощь в решении головоломки.
Написал скрипт выпадающего меню на JQuery. Во всех браузерах работает нормально (проверял на локальном компьютере).
После того, как я установил данный скрипт на сайт, меню работает должным образом только в Firefox. Chrome, Yandex, IE -- не выпадает меню третьего уровня. Причина -- после завершения анимации выпадания меню второго уровня для него устанавливается свойство overflow:hidden (которое используется во время анимации JQuery, как я понял).

Увидеть баг можно здесь: http://ez-bitrix.ru
Для того, чтобы появилось меню третьего уровня, желательно сузить окно браузера до 600 пикселей, к примеру, чтобы появилась собирающая кнопка "Еще...".

Очень жду ваших советов.
Ответить с цитированием
  #2 (permalink)  
Старый 11.07.2015, 11:34
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

jasper-blondin,
ни кнопки
Сообщение от jasper-blondin
"Еще...".
ни третьего уровня меню нигде не обнаружил.
Ответить с цитированием
  #3 (permalink)  
Старый 11.07.2015, 11:49
Аватар для jasper-blondin
Аспирант
Отправить личное сообщение для jasper-blondin Посмотреть профиль Найти все сообщения от jasper-blondin
 
Регистрация: 11.07.2015
Сообщений: 33

Нужно сузить окно браузера пикселей до 800, к примеру, и обновить страницу. Тогда те пункты меню, которые не поместятся, свернутся в кнопку "Еще..." (последний пункт меню). Вот там получится 3 уровня меню: главный, свернутые пункты и их подменюшки.
Ответить с цитированием
  #4 (permalink)  
Старый 11.07.2015, 12:14
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

jasper-blondin,
все функции анимации по завершении выполняют callback поставьте в callback необходимые изменения css;
Ответить с цитированием
  #5 (permalink)  
Старый 11.07.2015, 12:32
Аватар для jasper-blondin
Аспирант
Отправить личное сообщение для jasper-blondin Посмотреть профиль Найти все сообщения от jasper-blondin
 
Регистрация: 11.07.2015
Сообщений: 33

Да, конечно, такой радикальный метод сработает.
Однако мне интересна сама причина: из-за чего возникает проблема. Это такой баг JQuery, который проявляется только в webkit и т.п. только при каких-то непонятных условиях?

Интересно то, что:
1) в Firefox все работает отлично;
2) в Chrome работа скрипта разная:
a) если открыть файл только лишь с меню -- все работает отлично;
б) если установить скрипт на сайт -- проявляется баг.

Конечно, проблема решена (криво, но решена). Но хотелось бы знать, в чем причина такого поведения.
Ответить с цитированием
  #6 (permalink)  
Старый 11.07.2015, 12:39
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

jasper-blondin,
тут скорее нужен специалист по css или желающий препарировать ваш скрипт, делайте макет с локализацией проблемы, может подскажут решение.
Ответить с цитированием
  #7 (permalink)  
Старый 11.07.2015, 12:45
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

jasper-blondin,
как вариант я делал сразу после анимации исправление css hide(100).css(нужные параметры); вместо hide(100, callback(нужные параметры) ) - если это не влияло на анимацию, потому что после начала анимации сss уже не больше не дополняют.
Ответить с цитированием
  #8 (permalink)  
Старый 11.07.2015, 12:51
Аватар для jasper-blondin
Аспирант
Отправить личное сообщение для jasper-blondin Посмотреть профиль Найти все сообщения от jasper-blondin
 
Регистрация: 11.07.2015
Сообщений: 33

Вобщем, нужно укротить свое любопытство и довольствоваться тем, что все работает.

Спасибо за дискуссию!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Где найти анимации для слайдера Synov_son jQuery 6 16.10.2014 18:07
Начало анимации с места предыдущей анимации FanAizu (X)HTML/CSS 3 21.03.2014 12:39
Нет прорисовки программной анимации (отрисовывается только конечный результат) AntiVIRUZ Общие вопросы Javascript 1 16.02.2014 18:56
Координаты мыши при окончании анимации. Blanco jQuery 4 20.10.2012 16:57
clearInterval при окончании анимации UnderShot Общие вопросы Javascript 2 19.11.2010 20:30