[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Прокрутка плавающего блока если он больше окна
Страницы: 1, 2
greenseer
Здравствуйте! Помогите плиз. 3 часа не могу ничего найти в нэте.

Есть фиксированное(плавающее) меню ( https://jsfiddle.net/e7gtubLs/10/ ) . оно многоуровневое. если окно браузера(размер экрана) небольшое, то выбрать нижние выпадающие пункты меню НЕВОЗМОЖНО, так как прокручивается страница, а не эти пункты.

Нужно - чтобы ЕСЛИ эти выпадающие пункты меню больше окна браузера, то прокрутка основной страницы (body) остановилась, и включилась прокрутка только этого меню (стандартными полосами прокрутки (сбоку и снизу(если нужно) окна браузера))

(кнопка меню чтобы оставалась закрепленной, а выпадающее меню можно было прокручивать)
depp
overflow поможет
greenseer
но как именно? если не сложно, добавь код в пример и пришли, пожалуйста
greenseer
Мдааа... ломаю голову уже 3 часа. ничего... есть вариант сделать кнопку меню (.m0) закрепленной (fixed) (тогда выпадающее меню прокручивается норм) но как сделать чтобы это меню появлялось под кнопкой (в любом месте после прокрутки) непонятно.

(в старом примере я просто убрал fixed с .m1)

новый пример. https://jsfiddle.net/e7gtubLs/11/
проблема легко решится, если можно чтобы выпадающее меню (.m1) появлялось даже после прокрутки под кнопкой меню (.m0)
greenseer
Неужели никто не поможет? помогите, пожалуйста, буду очень признателен
greenseer
Цитата (depp @ 6.02.2017 - 22:03)
overflow поможет

перепробовал кучу вариантов, что то не выходит ничего. понимаете, мне нужно что бы полосы прокрутки использовались стандартные
greenseer
Есть идея при клике на кнопку меню сделать так что бы список раскрываемого меню помещался на страницу в незакрепленном виде (not fixed) но что бы этот список появлялся ПОД фиксированной кнопкой (даже после прокрутки)
Короче появление незафиксированного блока, под зафиксированным - Можно ли такую проблему решить?
https://jsfiddle.net/e7gtubLs/14/ - типа вот так, но здесь подменю не появляется под кнопкой, после прокрутки
SerginhoLD
Почитай как делается адаптивный дизайн.

Если человек зашел с обычно браузера на ПК, нет смысла делать какие-то прокрутки в меню, страница колесом мыши прекрасно крутится.

Если экрана маленький, то считается что человек зашел на сайт с мобильного устройства, в таком случае обычно большая часть меню скрывается, появляется кнопка (аля "гамбургер"), при нажатии которой раскрывается меню, как правило модальное окно на весь экран (position: fixed) с обычной прокруткой внутри и с обычным древовидным списком ссылок (ul li).

_____________
"internet explorer всех правильней отображает страницы" ©
greenseer
SerginhoLD

ты не понял, фиксированное выпадающее меню имеет подпункты, 4 уровня. и если открывать нижние подпункты то эти подпункты по высоте не вмещаются в окно браузера (1024*768)

да у меня будет адаптивный(резиновый) сайт и мобильная версия(для нее меню будет другим)

проблема не в этом, а в том что выпадающие подпункты меню НЕ ВМЕЩАЮТСЯ НА СТРАНИЦЕ. в примере все видно и понятно.

https://jsfiddle.net/e7gtubLs/10/ - попробуй выбрать нижние подпункты хотя бы 3го уровня. ничего у тебя не выйдет, так как страница прокручивается и выбрать подпункты НЕВОЗМОЖНО

https://jsfiddle.net/e7gtubLs/14/ - вот частичное решение проблемы. Нужно только, чтобы первое выпадающее меню(.m1) появлялось ПОД фиксированной кнопкой меню(.m0) на любой высоте после прокрутки страницы.

ТО ЕСТЬ нужно отследить перемещение фиксированной кнопки меню(m0) и ЗАДАТЬ появление незафиксированного подменю(m1) под этой кнопкой.
greenseer
вот тема что то решили http://javascript.ru/forum/job/67285-prokr...a-brauzera.html
comolov
greenseer, посмотри, так чтоли?
https://jsfiddle.net/e7gtubLs/19/
greenseer
comolov ты крутой, спасибо большое)))))))))))) за сколько минут ты это сделал?
greenseer
это действительно то что я хотел))) слушай,
если это возможно то добавь возможность что бы еще:

если подменю открыто то прокрутка страницы только в пределах открывшихся пунктов подменю
twin
Если делаешь меню такого рода, нужно учитывать юзабильность. У вас она хромает, потому что выбрать меню можно только "ступенькой". На картинке зеленым цветом. Но юзер обычно идет по кратчайшему пути, на картинке красным. Когда начинают вылетать не те менюшки, которые ждешь, это сильно раздражает.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
greenseer
twin
понял вас, похоже вы правы.
Вы имеете в виду нужно сделать задержку, что бы пользователь успевал выбрать пункт?
Если да, наверное вы правы. Если не сложно подскажите пожалуйста как это сделать
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.