![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| GIK |
|
||||
![]() Добрый человек ![]() ![]() Профиль Группа: Участник Сообщений: 985 Регистрация: 3.6.2005 Где: я только не небыв ал Репутация: 6 Всего: 14 |
Я извиняюсь что создаю похожие темы, но это частный случай
У меня такая задача: Хочу сделать выпадающее меню, не просто выпадающее, а МЕДЛЕННО выпадающее, как например на сайте sony.ru. Вот с чего я начал:
А далее после различных эксперементов пошли курьезы: (если навести один раз, убрать, и навести еще раз, то произойдет чудо), это чудо объесняется мной частично: после первой наводки инициализируется I++, что даст 2, далее после отвода мыши 3, но почему визуално я вижу слои только после повторного навода, вот это как раз и есть чудо???
У кого есть идеи по созданию плавно выпадающего меню ???????? -------------------- Математика=>пиво=> програмирование, три вещи последовательны и совместимы !!! Программирование - это не деятельнось! Программирование - это состояние души! Бог - самый крутой программист. |
||||
|
|||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
GIK ничего медленно выпадающего на sony.ru не увидел. По товему коду... где же там медленно что выпадает? По шаговое открытие строк это плохая тактика.
Добавлено @ 16:18
Жать на кнопку "редактировать", заменить все вхождения {code=javascript] на {code=html]. Попытаться обьяснить произошедшие изменения и главное смысл подсветки. -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 55 Всего: 137 |
||||
|
||||
| GIK |
|
|||
![]() Добрый человек ![]() ![]() Профиль Группа: Участник Сообщений: 985 Регистрация: 3.6.2005 Где: я только не небыв ал Репутация: 6 Всего: 14 |
А я как раз до этого догадался. Что если сделать так: Первый слой видимый(он же начало меню), второй слой "прячется" за первым, он постепенно вылазит из него, все остальные слои невидимы и их нахождение имеет координаты "1 слой вниз", т.е. пронумерованные слои начиная со второго, изначально находятся на растоянии равному тольшине 1-го слоя вниз. Т.е. используем setTimeout, который в первой функции увеличивает top слоя №2 постепенно, на 1 px, и как только он достиг предела, вызываем вторую функцию, которая сначала делает видимым слой №3 (который на данный момент находится под слоем №2) и затем увеличивает его top также на 1 px., т.е. слой №3 изначально находится на "пределе" слоя №2, только он невидим. Все это прописать мне недолго, но есть пара логических ошибок которые я не пойму. 1) в моем примере нахождение слоя №1 имеет свое визуальное нахождение относительно других неправильным, хотя координаты left =24, т.е. такие же как у остальных. 2) слой №3 находится выше слоя №2 А на сайте sony.ru раньше была плавно выпадающая менюшка. P.S. не отвечал долго т.к. немог, компьютер подключенный к интернет пока только на работе. -------------------- Математика=>пиво=> програмирование, три вещи последовательны и совместимы !!! Программирование - это не деятельнось! Программирование - это состояние души! Бог - самый крутой программист. |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
GIK открыл твой пост, подредактировал. Будь добр, в следующий раз не тормози, если видишь в коде теги, знай это html, соотвественно {code=html] чот бы подсветка была верная. Если ещё не ясно, html может содержать не только теги, но и CSS и JS, а подсветка у нас достаточно "умна" что бы это всё дело отдельно подсветить.
Не пойму как должна быть анимация? Допустим слой плавно выезжает "из ниоткуда", это обычно выполняеться вырезанием слоя (стиль clip), либо сделай слой с заданными размерами и overflow: hidden, внутрь положи слой на абсолютной позиции. Если внутренний слой за пределами окошка внешнего слоя, то его не видно, затем выдвигай его в окошко. Оба эффекта(стиль clip и "слой окошко") смотряться одинакого, но clip чуть больше торозит. -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| GIK |
|
||||
![]() Добрый человек ![]() ![]() Профиль Группа: Участник Сообщений: 985 Регистрация: 3.6.2005 Где: я только не небыв ал Репутация: 6 Всего: 14 |
Сдесь приблизительный код.
Ни как не могу разместить слои правильно, у меня почему-то слой №1 при left=12 все равно отличается от других:
Добавлено @ 09:24 Да и чуть не забыл: Вчера обнаружил что вместо тега <body> можно писать так: <b , не так <bo и не так<bod Вот пример:
-------------------- Математика=>пиво=> програмирование, три вещи последовательны и совместимы !!! Программирование - это не деятельнось! Программирование - это состояние души! Бог - самый крутой программист. |
||||
|
|||||
| Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 55 Всего: 137 |
можно вообще ничего не писать, парсер сам подставит… Но это не является корректным. |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Это ты в какой спецификации нашёл? Наша подсветка не норматив, что бы на её результаты опираться Во вторых не хочетсья тестировать код и дорабатывать, если он с первого раза не пашет. Браузер же откровенно ошибки кидает и матом ругаеться, или ты этого не видишь? -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| GIK |
|
|||
![]() Добрый человек ![]() ![]() Профиль Группа: Участник Сообщений: 985 Регистрация: 3.6.2005 Где: я только не небыв ал Репутация: 6 Всего: 14 |
Ладно бох с ним с Body (Хотя у меня ни чего не ругается и все работает, по крайней мере ИМЕННО <b).
Меня сейчас больше всего интересует корректное (как указывают координаты) расположение слоев???? -------------------- Математика=>пиво=> програмирование, три вещи последовательны и совместимы !!! Программирование - это не деятельнось! Программирование - это состояние души! Бог - самый крутой программист. |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Времени не хватает написать тебе прару примеров...
О координатах + полезные примеры: http://forum.vingrad.ru/index.php?showtopic=28220 -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| Гость_12345 |
|
|||
|
Unregistered |
GIK : не вижу попытку создать плавное выпадение. Для него нужно содержать функции setTimeout() (setInterval()) в коде, чтобы указывать интервал срабатывания. Без них не будет.
Чудеса здесь (сам не смотрел) появляются, видимо, из-за наезжания слоёв, и когда выполняестя подвод мыши снизу, появляется скрытый слой, закрывает ведущий, на нём работает mouseOut, всё закрывается. Почему бы не сделать сразу красиво, в однослойной таблице, проявлять по display, и конечно же, с setTimeout()?
|
|||
|
||||
| PARROT |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2339 Регистрация: 5.1.2005 Где: Спб-ЦарьГрад Репутация: 1 Всего: 50 |
Тогда и это меню подойдет:
Незнаю хорошее оно или нет, я не спец в яваскрипт, но работает!
-------------------- Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим! |
|||
|
||||
| GIK |
|
|||
![]() Добрый человек ![]() ![]() Профиль Группа: Участник Сообщений: 985 Регистрация: 3.6.2005 Где: я только не небыв ал Репутация: 6 Всего: 14 |
PARROT спасибо, хотя стиль написания мне мало понятен.
Гость_12345 твой код я тоже разобрал, но все же с таблицами не так красиво -------------------- Математика=>пиво=> програмирование, три вещи последовательны и совместимы !!! Программирование - это не деятельнось! Программирование - это состояние души! Бог - самый крутой программист. |
|||
|
||||
| Гость_12345 |
|
|||
|
Unregistered |
Чем же таблицы отличаются от слоёв? Они помогают не считать координаты слоя, подвешиваются в нужное место (в отдельный слой), поэтому компактнее и не зависят от контекста. А попробуй свои слои поставить в плавающий дизайн?
|
|||
|
||||
| Sardar |
|
||||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Оберни слои на абсолютной позиции в слой на релативной, который помещай куда угодно и ставь ему любой размер. Пример:
Писать на JS не возможно не зная правильной вёрстки, т.е. CSS. Кстати CSS это не набор стилей, это точное и ясно описание визуальной модели документа. Прочитав вопросы типа "как расположить меню" исчезнут вместе с кучей "багов". -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
||||
|
|||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |