Меню для мобильной версии сайта. Как "повесить" меню на кнопку

12
Z2
На сайте с 31.03.2013
Offline
46
7417

Добрый день.

Столкнулись с небольшой проблемой, не можем вывести блок меню через кнопку. В магазине достаточно длинное левое меню - каталог. В обычной (десктопной) версии сайта всё устраивает. Каталог находится слева, удобно, понятно.

Но в мобильной версии, каталог слишком длинный. Решили для всех устройств, уже чем 520 px, вместо каталога повесить боковую кнопку "каталог", чтобы контент не закрывать и при необходимости, взывать само меню каталога. Но как "прицепить" меню к кнопке?

Сама кнопка очень простая:

<p class="right_menu button br1">каталог</p>

Выглядит:

Сайт: https://magazin-integral.ru

Joomla 3.6.5

Может кто подскажет? + к карме :)

Z2
На сайте с 31.03.2013
Offline
46
#2

Samail, спасибо конечно, за попытку помочь.

Но тут есть 2 момента:

1. Плагины не хотим применять. При нагрузке 40 К посетителей, лишний плагин подключать не хочется.

2. Во 2-ой ссылке рассматривается то же плагин. Да и список у нас уже готовый, точнее модуль меню (не как в примере).

Samail
На сайте с 10.05.2007
Offline
361
#3
Zenit2007:
При нагрузке 40 К посетителей

Яваскрипту какая разница сколько посетителей ...тем более что судя по счётчику метрики на вашем сайте, посетителей у вас 100-200 в день, а не 40 тысяч.

M
На сайте с 31.10.2009
Offline
107
#4

например

js + css

если < 520

@media all and (max-width: 520px) {

- скрыть меню

- показать кнопку

}

- по клику на кнопку выезжает или всплывает мобильное меню, как угодно

если >520

- скрыть кнопку

- скрыть моб. меню

- показать обычное меню

меню может быть одно - сверстанное в 2 вариантах - обычное и моб.

[Удален]
#5

CSS + jQuery

1 - Скрываем меню в мобильной и планшетной версии с помощью медиа запросов

2 - Делаем видимой плавающую кнопку в мобильной и планшетной версии с помощью медиа запросов

3 - С помощью jQuery добавляем классы по клику на плавающую кнопку, чтобы меню стало видимым.

$(function(){ // Функция для меню

$('.ИМЯ-КЛАССА-КНОПКИ').click(function(){ // Выбираем классы для кнопок вкл/выкл меню
$('КЛАСС-НЕВИДЕМОГО-МЕНЮ').toggleClass('КЛАСС-ВИДИМОГО-МЕНЮ'); // Делаем блок меню видимым/невидимым по клику присваивая класс
$('body').toggleClass('no-hidden'); // Блокируем прокрутку основного сайта при открытом меню
});
});

4- Стилизуем менюху в мобильной и планшетной версии

Z2
На сайте с 31.03.2013
Offline
46
#6
Samail:
Яваскрипту какая разница сколько посетителей ...тем более что судя по счётчику метрики на вашем сайте, посетителей у вас 100-200 в день, а не 40 тысяч.

А вот не скажите, Page Speed Insight ещё как ругается на лишние скрипты. Да и Яндекс Маркет очень часто 404 ошибку дает, хотя счетчик Яндекс Метрика молчит как рыба. Поэтому к быстродействию требования строгие.

Точно такой же прием (метод решения) будет стоять на https://mathematics-tests.com, а на нем в октябре (пора контрольных работ), счетчик и поболее будет.

[Удален]
#7
Zenit2007:
Page Speed Insight ещё как ругается на лишние скрипты.

На внешние - да (в том случае когда там добротно кэш не установлен).

На лишние - нет (на разве кто-то будет что-то лишнее добавлять? 😂).

Пруф с личного сайта где JS кода вдоволь ☝. Слабонервным не смотреть.

Samail
На сайте с 10.05.2007
Offline
361
#8
Zenit2007:
А вот не скажите, Page Speed Insight ещё как ругается на лишние скрипты.

Так вы дубли скриптов уберите, оставшееся скрипты и CSS в один файл объедините и сократите, сразу меньше ругаться будет, а тот несчастный скриптик который меню выводит погоды вам не сделает.

Всё это (почти) можно сделать опять-же плагином https://www.jch-optimize.net/downloads.html

Z2
На сайте с 31.03.2013
Offline
46
#9
maccamset:
например
js + css

если < 520
@media all and (max-width: 520px) {
- скрыть меню
- показать кнопку
}
- по клику на кнопку выезжает или всплывает мобильное меню, как угодно

если >520
- скрыть кнопку
- скрыть моб. меню
- показать обычное меню

меню может быть одно - сверстанное в 2 вариантах - обычное и моб.

если < 520

@media all and (max-width: 520px) {

- скрыть меню

- показать кнопку

Это уже реализовано, осталось на кнопку "повесть" меню.

---------- Добавлено 18.08.2017 в 21:05 ----------

Samail:
Так вы дубли скриптов уберите, оставшееся скрипты и CSS в один файл объедините и сократите, сразу меньше ругаться будет, а тот несчастный скриптик который меню выводит погоды вам не сделает.
Всё это (почти) можно сделать опять-же плагином https://www.jch-optimize.net/downloads.html

Спасибо, конечно,но ещё раз повторяю, плагин не будем устанавливать, нагружает сильно. Хостер и так жалуется, когда под 40 К пользователей.

Вот это сделано:

если < 520 @media all and (max-width: 520px) {

- скрыть меню

- показать кнопку }

- по клику на кнопку выезжает или всплывает мобильное меню, как угодно

если >520

- скрыть кнопку

- скрыть моб. меню

- показать обычное меню"

Не получается "повесить" на кнопку модуль с меню.

S
На сайте с 30.09.2016
Offline
469
#10
Zenit2007:
плагин не будем устанавливать, нагружает сильно. Хостер и так жалуется

Хостер - не гуглоспид, ему по барабану жабаскрипт, потому как тот на клиентской стороне работает.

Zenit2007:
Не получается "повесить" на кнопку модуль с меню.

Что значит "не получается"? Функцию onclick не можете прицепить?

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий