MDUIDocs
Копировать ссылку llms.txtКопировать ссылку llms-full.txtПросмотреть страницу в MarkdownОбсудить страницу с ChatGPTОбсудить полную документацию проекта с ChatGPT
Предустановленный цвет
Пользовательский цвет
Извлечь цвет из обоев
Пожалуйста, выберите обои
Начало работы
Разработка с помощью ИИ
Стили
Интеграция с фреймворками
Компоненты
Avatar АватарBadge БейджBottomAppBar Нижняя панель приложенияButton КнопкаButtonIcon Кнопка с иконкойCard КарточкаCheckbox ЧекбоксChip ЧипCircularProgress Круговой индикатор прогрессаCollapse Раскрывающийся блокDialog Диалоговое окноDivider РазделительDropdown Выпадающее менюFab Плавающая кнопка действияIcon ИконкаLayout LayoutLinearProgress Линейный индикатор прогрессаList СписокMenu МенюNavigationBar Панель навигацииNavigationDrawer Выдвижная панель навигацииNavigationRail Боковая панель навигацииRadio РадиокнопкаRangeSlider Слайдер диапазонаSelect Выпадающий списокSegmentedButton Сегментированная кнопкаSlider СлайдерSnackbar СнэкбарSwitch ПереключательTabs ВкладкиTextField Текстовое полеTooltip ТултипTopAppBar Верхняя панель приложения
Функции
Библиотеки

MenuМеню

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

Если вам нужно реализовать выпадающее меню, вы можете использовать компонент <mdui-dropdown>.

Использование

При необходимости импортируйте компоненты:

import 'mdui/components/menu.js';
import 'mdui/components/menu-item.js';

При необходимости импортируйте типы TypeScript:

import type { Menu } from 'mdui/components/menu.js';
import type { MenuItem } from 'mdui/components/menu-item.js';

Пример использования:

Item 1 Item 2
<mdui-menu>
  <mdui-menu-item>Item 1</mdui-menu-item>
  <mdui-menu-item>Item 2</mdui-menu-item>
</mdui-menu>

Примеры

Выпадающее меню

Используйте компонент <mdui-dropdown> для реализации выпадающего меню.

Компактная компоновка

Добавьте атрибут dense к компоненту <mdui-menu>, чтобы включить компактную компоновку.

Отключенные пункты меню

Добавьте атрибут disabled к компоненту <mdui-menu-item>, чтобы отключить пункт меню.

Поддержка одиночного выбора

Установите атрибут selects компонента <mdui-menu> в значение single, чтобы включить режим одиночного выбора. В этом случае значением value компонента <mdui-menu> будет значение value выбранного <mdui-menu-item>.

Поддержка множественного выбора

Установите атрибут selects компонента <mdui-menu> в значение multiple, чтобы включить режим множественного выбора. В этом случае значением value компонента <mdui-menu> будет массив значений value выбранных <mdui-menu-item>.

Обратите внимание: в режиме множественного выбора value компонента <mdui-menu> является массивом, который можно читать и устанавливать только через JavaScript-свойство.

Иконка

С помощью атрибутов icon и end-icon у компонента <mdui-menu-item> можно добавить иконки Material Icons слева и справа от пункта меню. С помощью атрибута end-text можно добавить текст справа. Также можно использовать слоты icon, end-icon и end-text для добавления элементов.

Если нужно оставить место для иконки слева для выравнивания с другими пунктами меню, установите атрибут icon в пустую строку.

В режимах одиночного или множественного выбора можно задать иконку выбранного состояния через атрибут selected-icon или слот selected-icon.

Установите атрибут href у компонента <mdui-menu-item>, чтобы превратить пункт меню в ссылку. При этом также можно использовать связанные с ссылками атрибуты: download, target, rel.

Подменю

В компоненте <mdui-menu-item> можно использовать слот submenu для указания элементов подменю.

В компоненте <mdui-menu> можно задать способ вызова подменю через атрибут submenu-trigger.

Когда атрибут submenu-trigger установлен в значение hover, можно задать задержку открытия и закрытия подменю через атрибуты submenu-open-delay и submenu-close-delay у компонента <mdui-menu>.

Пользовательское содержимое

В компоненте <mdui-menu-item> вы можете использовать слот custom для полной настройки содержимого пункта меню.

АтрибутСвойствоReflectТипПо умолчанию

Значение пункта меню.

Определяет, отключён ли пункт меню.

Имя иконки Material Icons слева. Можно задать через slot="icon".

Если слева не нужна иконка, но нужно зарезервировать место, можно передать пустую строку в качестве заполнителя.

Имя иконки Material Icons справа. Можно задать через slot="end-icon".

Текст справа. Можно задать через slot="end-text".

Имя иконки Material Icons для выбранного состояния. Можно задать через slot="selected-icon".

Определяет, открыто ли подменю.

Целевой URL ссылки.

Если задано это свойство, компонент будет отображаться как элемент <a> и можно использовать свойства, связанные со ссылками.

Имя файла для скачивания при переходе по ссылке.

Примечание: Это свойство действует только при заданном свойстве href.

Определяет, где будет открыта ссылка. Возможные значения:

  • _blank — открывает ссылку в новом окне
  • _parent — открывает ссылку в родительском фрейме
  • _self — открывает ссылку в текущем фрейме (по умолчанию)
  • _top — открывает ссылку во всём окне

Примечание: Это свойство действует только при заданном свойстве href.

Определяет тип связи между текущим документом и связанным документом. Возможные значения:

  • alternate — альтернативная версия текущего документа
  • author — автор текущего документа или статьи
  • bookmark — постоянная ссылка на ближайший родительский раздел
  • external — ссылка ведёт на другой сайт
  • help — ссылка на соответствующую справочную документацию
  • license — основное содержимое текущего документа лицензируется по лицензии связанного файла
  • me — текущий документ представляет владельца связанного контента
  • next — текущий документ является частью серии, а цитируемый документ — следующим в серии
  • nofollow — не передавать ссылке вес
  • noreferrer — не передаёт заголовок Referer. Эффект аналогичен noopener
  • opener — если гиперссылка создаёт контекст просмотра верхнего уровня (то есть значение атрибута target равно _blank), создаётся вспомогательный контекст просмотра
  • prev — текущий документ является частью серии, а цитируемый документ — предыдущим в серии
  • search — содержит ссылку на ресурс, который можно использовать для поиска по текущему файлу и связанным с ним страницам
  • tag — указывает тег, относящийся к текущему документу (определяется по указанному адресу)

Примечание: Доступно только при заданном свойстве href.

Определяет, будет ли элемент автоматически получать фокус после загрузки страницы.

Порядок перехода к элементу при нажатии клавиши Tab.

НазваниеПараметрыВозвращаемое значение

Имитирует щелчок мыши по элементу.

Устанавливает фокус на текущий элемент.

В качестве аргумента можно передать объект со свойством:

  • preventScroll: по умолчанию после получения фокуса страница прокручивается, чтобы элемент появился в области видимости. Чтобы этого избежать, задайте для этого свойства значение true.

Убирает фокус с текущего элемента.

Название

Срабатывает при получении фокуса.

Срабатывает при потере фокуса.

Срабатывает в начале открытия подменю. Можно отменить открытие, вызвав event.preventDefault().

Срабатывает после завершения анимации открытия подменю.

Срабатывает в начале закрытия подменю. Можно отменить закрытие, вызвав event.preventDefault().

Срабатывает после завершения анимации закрытия подменю.

Название

Текст пункта меню.

Иконка слева от пункта меню.

Иконка справа от пункта меню.

Текст справа от пункта меню.

Иконка выбранного состояния.

Подменю.

Любое пользовательское содержимое.

Название

Контейнер пункта меню.

Иконка слева.

Текстовое содержимое.

Иконка справа.

Текст справа.

Иконка выбранного состояния.

Элемент подменю.

АтрибутСвойствоReflectТипПо умолчанию

Режим выбора пунктов меню. По умолчанию выбор отключён. Возможные значения:

  • single — одиночный выбор
  • multiple — множественный выбор

Значение текущего выбранного <mdui-menu-item>.

Примечание: HTML-атрибут этого свойства всегда является строкой; задать начальное значение через HTML-атрибут можно только при selects="single". JavaScript-свойство этого свойства является строкой при selects="single" и массивом строк при selects="multiple". Поэтому при selects="multiple" изменить это значение можно только через JavaScript-свойство.

Определяет, использовать ли компактный режим для пунктов меню.

Способ открытия подменю, можно указать несколько значений через пробел. Возможные значения:

  • click — открытие по клику на пункт меню
  • hover — открытие при наведении мыши на пункт меню
  • focus — открытие при фокусе на пункте меню
  • manual — можно открывать и закрывать только программно, другие способы не указываются

Задержка открытия подменю при наведении мыши, в миллисекундах.

Задержка закрытия подменю при наведении мыши, в миллисекундах.

НазваниеПараметрыВозвращаемое значение

Устанавливает фокус на текущий элемент.

Убирает фокус с текущего элемента.

Название

Срабатывает при изменении выбора пунктов меню.

Название

Элементы подменю (<mdui-menu-item>), разделители (<mdui-divider>) и т.д.

Название

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

На этой странице