Меню CSS против меню JavaScript - PullRequest
0 голосов
/ 14 июля 2011

При создании выпадающего меню есть такие jQuery-меню, как superfish и pure CSS-меню. Есть ли разница между меню JS и меню CSS?

Мне не нужно событие onclick, чтобы перезаписать привязку по умолчанию. Мне просто нужно иметь возможность щелкнуть пункт меню, а затем перейти на <a href="...">...</a> на другую страницу.

Ответы [ 4 ]

3 голосов
/ 14 июля 2011

Отличия:

  1. Сбой JavaScript, если пользователь отключил JavaScript;Меню CSS не будут работать, если пользователь отключил CSS (что не так часто встречается)
  2. JavaScript, созданный с помощью таких библиотек, как jQuery, является более кросс-браузерным, поскольку кросс-браузерные проблемы решаются библиотекой
  3. Меню JavaScript более гибкие, так как CSS все еще недостаточно развит для создания очень сложных эффектов (не забывайте, что JavaScript - это язык программирования, а язык программирования означает, что вы можете делать практически все, что захотите. Но CSSбольше похоже на декларативный стиль )
  4. CSS-меню обычно меньше по размеру (см., например, Результаты мысли ), но это не так уж важно в современных скоростях Интернетапользователи имеют.
  5. Иногда в меню требуется группировка , чего нельзя достичь с помощью CSS, но можно сделать с помощью JavaScript.(группировка означает, что вы хотите открыть раскрывающийся список по нажатию элемента, а не по адресу ссылки. Конечно, в вашем случае это не является обязательным требованием)
2 голосов
/ 14 июля 2011

Очевидное отличие состоит в том, что меню JS намного более настраиваемы.Вы не можете управлять такими вещами, как скорость отображения меню, используя только CSS.

1 голос
/ 17 июля 2011

Даже при том, что я разработчик, я всегда стараюсь вообще избегать программирования.

Я думаю, что я пойду с меню CSS, которое покажет выпадающее меню DIV, используя событие onHover.

JavaScript может зависеть от других приложений, возможно дублирующих переменные. И вы можете легко перенести его на мобильные устройства, которые обычно не поддерживают JS

1 голос
/ 14 июля 2011

С философской точки зрения, CSS - это стиль, JS - взаимодействие. Однако теперь, когда WebKit полностью перешел на CSS-переходы, эта линия довольно размыта.

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

...