Отзывчивое меню, открывающееся по запросу

Я написал этот js, чтобы меню было отзывчивым, но не ломалось, когда js не включен.

У меня есть 2 списка меню, каждый из которых находится внутри своего элемента навигации. Для планшетов и мобильных устройств я хочу, чтобы отображалась только кнопка меню (первый элемент в списке с ), но не список, пока не будет нажата кнопка меню.

На данный момент первый список скрывается при открытии страницы, но другой список отображается постоянно. Однако щелчок по любой кнопке меню выполняет ту же работу по отображению первого списка. Ни одна навигация не имеет идентификатора или класса.

Почему только один из списков отвечает?

Это JS (в голове)

function showLists() {
$('.nav').show();
$(".menu").hide();
}
$(document).ready(function() {
if ($(window).width() < 450) {
    $('.nav').hide();
    $(".menu").click(function () {(
        showLists()
        )})
    }
});

person Chris Price    schedule 31.10.2013    source источник
comment
Ни один из элементов навигации не имеет идентификатора или класса, поэтому вам нужно использовать $("nav") для выбора всех nav элементов. $(".nav") означает все элементы, имеющие класс навигации. Кстати, не могли бы вы создать скрипку, пожалуйста, jsfiddle.net   -  person Yury Tarabanko    schedule 31.10.2013
comment
Спасибо. Это действительно помогло, так как заставило меня понять, что я дал всем элементам ссылки класс навигации. Немного неудобно, но очень полезно   -  person Chris Price    schedule 31.10.2013


Ответы (1)


Звучит так, как будто вы собираетесь использовать базовую навигацию по переключателям. Отличной отправной точкой для базовых и даже более продвинутых адаптивных решений являются Шаблоны RWD от Брэда Фроста< /а>.

Кроме того, в большинстве случаев вы должны быть в состоянии обойтись без определения только ОДНОГО списка навигации и использования CSS и JS для управления им, чтобы он вел себя отзывчиво.

person calcrisk33    schedule 10.02.2014