Лучшее раскрывающееся меню Javascript?

Я ищу раскрывающееся меню JavaScript.

Это должно быть самое простое и элегантное доступное меню, которое также работает в IE6 и Firefox 2. Было бы хорошо, если бы он работал с ненумерованным списком (ul), чтобы пользователь мог использовать страницу без поддержки JavaScript.

Какой из них посоветуете и где найти код такого меню?

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
16
0
14 676
7
Перейти к ответу Данный вопрос помечен как решенный

Ответы 7

Ответ принят как подходящий

Я думаю, что меню jquery superfish фантастическое и простое в использовании:

http://users.tpg.com.au/j_birch/plugins/superfish/

Javascript - это не требуется, и он основан на простых действительных списках unorder ul.

Это хорошо, но я ненавидеть выпадающих меню на веб-страницах, которые выполняют действия без моего нажатия; это приводит к тому, что вещи кажутся непонятными, если я не предпринимал никаких явных действий, чтобы это произошло.

delfuego 19.09.2008 17:02

При чем здесь суперфиш? Это не так.

Buzz 19.09.2008 19:30

Я нашел это красивым и простым в настройке. И самое приятное то, что он работает в IE6, IE7 и Firefox (я еще не тестировал с другими).

Germstorm 20.09.2008 19:58

Почему на все вопросы по JavaScript есть ответы JQuery?

David 03.12.2012 19:28

Поскольку JavaScript, HTML DOM и CSS представляют собой такой кластер устаревших «стандартов» подражателей, им пришлось создать оболочку вокруг всего языка и отобразить иерархию, которая действительно пригодна для использования. Просто используйте Flash / AS3.

Triynko 28.03.2013 21:57

A List Apart - выпадающие списки

Я бы использовал решение только для css, подобное приведенному выше, поэтому пользователь все равно будет получать раскрывающиеся меню даже с отключенным javascript.

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

Вот мой ответ с помощью jQuery:


jQuery.fn.ddnav = function() {
        this.wrap("");
        this.each(function() {
                var sel = document.createElement('select');
                jQuery(this).find("li.label, li a").each(function() {
                        jQuery("<option>").val(this.href ? this.href : '').html(jQuery(this).html()).appendTo(sel);
                });
                jQuery(this).hide().after(sel);
        });
        this.parent().find("select").after("<input type=\"button\" value=\"Go\">");
        var callback = function(button) {
                var url = jQuery(button.target).parent("div").find("select").val();
                if (url.length)
                        window.open(url, "_self")
        };
        this.parent().find("input[type='button']").click(callback);
        this.parent().find("select").change(callback);
        return this;
};

А затем в вашем готовом обработчике:


  $("ul.dropdown_nav").ddnav();

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

Я думаю, вам лучше никогда не использовать вышеуказанное (и я написал код!)

Для пуриста: http://www.grc.com/menudemo.htm Абсолютно никакого JavaScript, только чистый CSS - и работает практически со всеми браузерами.

Небольшая настройка может заставить их выглядеть так же хорошо, как и модные меню (jQuery и т. д.).

Но мы также использовали jQuery, YUI! и другие. ЮЙ! имеет отличные встроенные опции доступности, если это требуется для меню на основе JavaScript.

- Андрей

Я использую такой:

http://www.tanfa.co.uk/css/examples/menu/vs7.asp

Поставляется как в вертикальном, так и в горизонтальном исполнении.

Я был (беззастенчивым) поклонником Yahoo! Библиотека пользовательского интерфейса. У них хорошая система меню, который легко реализовать. Отличная кроссбраузерная поддержка.

Вероятно, вы можете получить что-то подобное и в других популярных фреймворках Javascript, таких как jQuery.

Это пример использования YUI 3 для раскрывающегося меню: jsbin.com/udigof/1

relipse 07.06.2013 22:19

Другие вопросы по теме