English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Модальное окно (Modal) - это подокно, которое покрывает родительское окно. Обычно, цель - показать содержимое из отдельного источника, позволяя взаимодействовать без выхода из родительского окна. Подокно может предоставлять информацию, интерактивные элементы и т.д.
Если вы хотите отдельно引用 функции этого плагина, вам нужно ссылаться на modal.js. Или, как Обзор плагинов Bootstrap как упоминалось в главе bootstrap.js или сжатой версии bootstrap.min.js.
Вы можете переключить скрытое содержимое модального окна (Modal) плагина:
через данные атрибутыУстановить атрибуты на контроллер элемента (например, кнопку или ссылку) data-toggle="modal"и одновременно установить data-target="#identifier" или href="#identifier" определяет модальное окно, которое нужно переключить (с id="identifier").
через JavaScriptИспользуя эту технологию, вы можете вызвать модальное окно с id="identifier" простым строкой JavaScript:
$('#identifier').modal(options)
Пример статического модального окна, как показано в следующем примере:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Bootstrap пример - модальное окно (Modal) плагин</title> <link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css"> <script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script> <script src="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script> </head> <body> <h2>Создание модального окна (Modal)</h2> <!-- Кнопка запуска модального окна --> <button class="btn btn-primary btn-lg" data-toggle="modal" data-target="#myModal"> Начало демонстрации модального окна </button> <!-- 模态框(Modal) --> <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true"> × </button> <h4 class="modal-title" id="myModalLabel"> Заголовок модального окна (Modal) </h4> </div> <div class="modal-body"> Добавьте здесь текст </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">Закрыть </button> <button type="button" class="btn btn-primary"> Подтвердить изменения </button> </div> </div><!-- /.modal-content --> </div><!-- /.modal --> </div> </body> </html>Проверьте, нажмите <›/›
Результаты показаны ниже:
Комментарий к коду:
Для использования модального окна вам нужно иметь某种 триггер. Вы можете использовать кнопку или ссылку. В данном случае мы используем кнопку.
Если вы внимательно посмотрите на приведенный выше код, вы заметите, что в теге <button>,data-target="#myModal" является целевым модальным окном, которое вы хотите загрузить на страницу. Вы можете создать несколько модальных окон на странице и создать разные триггеры для каждого из них. teraz, ясно, что вы не можете загрузить несколько модулей одновременно, но вы можете создать несколько модальных окон, которые будут загружаться в разное время.
В модальном окне необходимо учитывать два момента:
Первым является .modalиспользуется для распознавания содержимого <div> как модального окна.
Вторым является .fade class. При переключении модального окна оно вызывает плавное появление и исчезновение содержимого.
aria-labelledby="myModalLabel"Этот атрибут ссылается на заголовок модального окна.
Атрибут aria-hidden="true" Используется для того, чтобы сохранить модальное окно невидимым, до тех пор, пока триггер не будет активирован (например, нажатие на соответствующую кнопку).
<div>, class="modal-header" это класс, который определяет стиль заголовка модального окна.
class="close"class="close", это CSS класс, который используется для настройки стиля кнопки закрытия модального окна.
data-dismiss="modal"data-dismiss="modal", это пользовательская данные attribute HTML5, который используется для закрытия модального окна.
class="modal-body"class="modal-body", это CSS класс Bootstrap, который используется для настройки стиля的主要内容 модального окна.
class="modal-footer"class="modal-footer", это CSS класс Bootstrap, который используется для настройки стиля нижней части модального окна.
data-toggle="modal"data-toggle="modal", это пользовательская данные attribute HTML5, которая используется для открытия модального окна.
Есть некоторые параметры, которые можно использовать для настройки внешнего вида и ощущений модального окна (Modal Window), они передаются через данные атрибуты или JavaScript. В таблице приведены эти параметры:
Название параметра | Тип/Значение по умолчанию | Имя данных属性 | Описание |
---|---|---|---|
backdrop | boolean или string 'static' Значение по умолчанию: true | data-backdrop | Указать статический фон, при нажатии на внешнюю часть модального окна окно не закроется. |
keyboard | boolean Значение по умолчанию: true | data-keyboard | Закрывать модальное окно при нажатии клавиши escape, если установлено значение false, то клавиша будет неактивна. |
show | boolean Значение по умолчанию: true | data-show | Показывать модальное окно при инициализации. |
remote | path Значение по умолчанию: false | data-remote | Использование jQuery .load Методы, которые инъектируют содержимое в тело модального окна. Если добавлен href с действительным URL, то будет загружено содержимое, как показано в следующем примере:<a data-toggle="modal" href="remote.html" data-target="#modal">Нажмите на меня</a> |
Ниже приведены полезные методы, которые можно использовать вместе с modal().
Методы | Описание | Пример |
---|---|---|
Опции: .modal(options) | Включить содержимое в качестве активного модального окна. Принимает опциональный объект опций. | $('#identifier').modal({ keyboard: false } |
Переключить: .modal('toggle') | Ручное переключение модального окна. | $('#identifier').modal('toggle') |
Показать: .modal('show') | Ручное открытие модального окна. | $('#identifier').modal('show') |
Скрыть: .modal('hide') | Ручное скрытие модального окна. | $('#identifier').modal('hide') |
Ниже приведен пример использования методов:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Пример Bootstrap - Методы модального окна (Modal) плагина</title> <link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css"> <script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script> <script src="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script> </head> <body> <h2>Методы модального окна (Modal) плагина Bootstrap</h2> <!-- Кнопка запуска модального окна --> <button class="btn btn-primary btn-lg" data-toggle="modal" data-target="#myModal"> Начало демонстрации модального окна </button> <!-- 模态框(Modal) --> <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">× </button> <h4 class="modal-title" id="myModalLabel"> Заголовок модального окна (Modal) </h4> </div> <div class="modal-body"> Нажмите кнопку ESC, чтобы выйти. </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">Закрыть </button> <button type="button" class="btn btn-primary"> Подтвердить изменения </button> </div> </div><!-- /.modal-content --> </div><!-- /.modal-dialog --> </div><!-- /.modal --> </body> </html>Проверьте, нажмите <›/›
Результаты показаны ниже:
Достаточно нажать клавишу ESC, чтобы выйти из модального окна.
В таблице ниже перечислены события, используемые в модальном окне. Эти события могут быть использованы в функции в качестве гвоздей.
События | Описание | Пример |
---|---|---|
show.bs.modal | Включается после вызова метода show. | $('#identifier').on('show.bs.modal', function () { // Выполнить некоторые действия... } |
shown.bs.modal | Включается при видимости модального окна для пользователя (ждет завершения CSS-транзита). | $('#identifier').on('shown.bs.modal', function () { // Выполнить некоторые действия... } |
hide.bs.modal | Включается при вызове примерного метода hide. | $('#identifier').on('hide.bs.modal', function () { // Выполнить некоторые действия... } |
hidden.bs.modal | Триггеряется, когда модальное окно полностью скрыто от пользователя. | $('#identifier').on('hidden.bs.modal', function () { // Выполнить некоторые действия... } |
Ниже приведен пример использования событий:
Результаты показаны ниже:
Как показано в примере выше, если вы нажали закрыть кнопка, то есть скрыть Если событие произошло, будет отображено сообщение с предупреждением.