Оживите компоненты Bootstrap — теперь с 13 собственными jQuery-плагинами.
Плагины можно подключать по отдельности (некоторые требуют зависимости), либо все сразу. Файлы bootstrap.js и bootstrap.min.js содержат все плагины в одном файле.
Вы можете использовать все плагины Bootstrap только через разметку, не написав ни одной строки JavaScript. Это основной API Bootstrap, и его стоит рассматривать в первую очередь при использовании плагинов.
Однако в некоторых случаях может понадобиться отключить эту функциональность. Для этого можно отключить API атрибутов данных, отвязав все события с пространством имён 'data-api'
на body
:
$('body').off('.data-api')
Чтобы отключить только определённый плагин, добавьте его имя в пространство имён вместе с data-api
:
$('body').off('.alert.data-api')
Также вы можете использовать все плагины Bootstrap через JavaScript API. Все публичные методы — одиночные, цепочечные и возвращают коллекцию, к которой применяются.
$(".btn.danger").button("toggle").addClass("fat")
Все методы принимают необязательный объект опций, строку для вызова определённого метода или ничего (инициализация с поведением по умолчанию):
$("#myModal").modal() // initialized with defaults $("#myModal").modal({ keyboard: false }) // initialized with no keyboard $("#myModal").modal('show') // initializes and invokes show immediately
Каждый плагин также предоставляет свой конструктор "Constructor" через свойство Constructor
: $.fn.popover.Constructor
. Если вы хотите получить экземпляр определённого плагина, извлеките его напрямую из элемента: $('[rel=popover]').data('popover')
.
Иногда может понадобиться использовать плагины Bootstrap вместе с другими UI-фреймворками. В этих случаях могут возникать конфликты пространств имён. Если это произойдёт, вы можете вызвать метод .noConflict
у плагина, который вы хотите вернуть к исходному значению.
var bootstrapButton = $.fn.button.noConflict() // return $.fn.button to previously assigned value $.fn.bootstrapBtn = bootstrapButton // give $().bootstrapBtn the bootstrap functionality
Bootstrap предоставляет собственные события для большинства уникальных действий плагинов. Обычно они принимают форму бесконечного и прошедшего времени, где бесконечное (например, show
) срабатывает в начале события, а прошедшее время (например, shown
) срабатывает по завершении действия.
Все бесконечные события предоставляют функциональность preventDefault. Это позволяет остановить выполнение действия перед его началом.
$('#myModal').on('show', function (e) { if (!data) return e.preventDefault() // stops modal from being shown })
Для простых эффектов перехода включите bootstrap-transition.js вместе с другими JS-файлами. Если вы используете собранный (или минифицированный) bootstrap.js, не нужно включать этот файл—он уже есть там.
Несколько примеров использования плагина перехода:
Модальные окна — это упрощённые, но гибкие диалоговые окна с минимально необходимым функционалом и умными дефолтными значениями.
Отображаемое модальное окно с заголовком, телом и набором действий в футере.
One fine body…
<div class="modal hide fade"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> <h3>Modal header</h3> </div> <div class="modal-body"> <p>One fine body…</p> </div> <div class="modal-footer"> <a href="#" class="btn">Close</a> <a href="#" class="btn btn-primary">Save changes</a> </div> </div>
Переключите модальное окно через JavaScript, нажав на кнопку ниже. Оно будет скрываться и появляться сверху страницы.
<!-- Button to trigger modal --> <a href="#myModal" role="button" class="btn" data-toggle="modal">Launch demo modal</a> <!-- Modal --> <div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> <h3 id="myModalLabel">Modal header</h3> </div> <div class="modal-body"> <p>One fine body…</p> </div> <div class="modal-footer"> <button class="btn" data-dismiss="modal" aria-hidden="true">Close</button> <button class="btn btn-primary">Save changes</button> </div> </div>
Активируйте модальное окно без написания JavaScript. Установите data-toggle="modal"
на элемент управления, например на кнопку, вместе с data-target="#foo"
или href="#foo"
для указания конкретного модального окна для переключения.
<button type="button" data-toggle="modal" data-target="#myModal">Launch modal</button>
Вызовите модальное окно с идентификатором myModal
одной строкой JavaScript:
$('#myModal').modal(options)
Опции можно передавать через атрибуты данных или JavaScript. Для атрибутов данных добавьте имя опции к data-
, например data-backdrop=""
.
Имя | тип | по умолчанию | описание |
---|---|---|---|
backdrop | boolean | true | Включает элемент modal-backdrop . Кроме того, можно указать static для затемнения, которое не закрывает модальное окно при клике. |
keyboard | boolean | true | Закрывает модальное окно при нажатии клавиши Escape |
show | boolean | true | Отображает модальное окно при инициализации. |
remote | path | false | Если указана удаленная ссылка, контент будет загружен с помощью метода
|
Активирует ваш контент как модальное окно. Принимает необязательный объект опций object
.
$('#myModal').modal({ keyboard: false })
Вручную переключает модальное окно.
$('#myModal').modal('toggle')
Вручную открывает модальное окно.
$('#myModal').modal('show')
Вручную скрывает модальное окно.
$('#myModal').modal('hide')
Класс модального окна Bootstrap предоставляет несколько событий для подключения к функционалу модального окна.
Событие | Описание |
---|---|
show | Это событие срабатывает сразу после вызова метода show экземпляра. |
shown | Это событие срабатывает, когда модальное окно становится видимым для пользователя (будет ждать завершения CSS-переходов). |
hide | Это событие срабатывает сразу после вызова метода hide экземпляра. |
hidden | Это событие срабатывает, когда модальное окно становится скрытым для пользователя (будет ждать завершения CSS-переходов). |
$('#myModal').on('hidden', function () { // do something… })
Добавьте выпадающие меню почти к чему угодно с этим простым плагином, включая навигационную панель, вкладки и табы.
Добавьте data-toggle="dropdown"
к ссылке или кнопке для переключения выпадающего меню.
<div class="dropdown"> <a class="dropdown-toggle" data-toggle="dropdown" href="#">Dropdown trigger</a> <ul class="dropdown-menu" role="menu" aria-labelledby="dLabel"> ... </ul> </div>
Чтобы сохранить URL-адреса, используйте атрибут data-target
вместо href="#"
.
<div class="dropdown"> <a class="dropdown-toggle" id="dLabel" role="button" data-toggle="dropdown" data-target="#" href="/page.html"> Dropdown <b class="caret"></b> </a> <ul class="dropdown-menu" role="menu" aria-labelledby="dLabel"> ... </ul> </div>
Вызовите выпадающие меню через JavaScript:
$('.dropdown-toggle').dropdown()
Нет
Программный API для переключения меню для заданной навигационной панели или вкладок.
Плагин ScrollSpy предназначен для автоматического обновления целей навигации на основе положения прокрутки. Прокрутите область ниже навигационной панели и посмотрите, как меняется класс активности. Выпадающие подпункты также будут подсвечены.
Ad leggings keytar, brunch id art party dolor labore. Pitchfork yr enim lo-fi before they sold out qui. Tumblr farm-to-table bicycle rights whatever. Anim keffiyeh carles cardigan. Velit seitan mcsweeney's photo booth 3 wolf moon irure. Cosby sweater lomo jean shorts, williamsburg hoodie minim qui you probably haven't heard of them et cardigan trust fund culpa biodiesel wes anderson aesthetic. Nihil tattooed accusamus, cred irony biodiesel keffiyeh artisan ullamco consequat.
Veniam marfa mustache skateboard, adipisicing fugiat velit pitchfork beard. Freegan beard aliqua cupidatat mcsweeney's vero. Cupidatat four loko nisi, ea helvetica nulla carles. Tattooed cosby sweater food truck, mcsweeney's quis non freegan vinyl. Lo-fi wes anderson +1 sartorial. Carles non aesthetic exercitation quis gentrify. Brooklyn adipisicing craft beer vice keytar deserunt.
Occaecat commodo aliqua delectus. Fap craft beer deserunt skateboard ea. Lomo bicycle rights adipisicing banh mi, velit ea sunt next level locavore single-origin coffee in magna veniam. High life id vinyl, echo park consequat quis aliquip banh mi pitchfork. Vero VHS est adipisicing. Consectetur nisi DIY minim messenger bag. Cred ex in, sustainable delectus consectetur fanny pack iphone.
In incididunt echo park, officia deserunt mcsweeney's proident master cleanse thundercats sapiente veniam. Excepteur VHS elit, proident shoreditch +1 biodiesel laborum craft beer. Single-origin coffee wayfarers irure four loko, cupidatat terry richardson master cleanse. Assumenda you probably haven't heard of them art party fanny pack, tattooed nulla cardigan tempor ad. Proident wolf nesciunt sartorial keffiyeh eu banh mi sustainable. Elit wolf voluptate, lo-fi ea portland before they sold out four loko. Locavore enim nostrud mlkshk brooklyn nesciunt.
Ad leggings keytar, brunch id art party dolor labore. Pitchfork yr enim lo-fi before they sold out qui. Tumblr farm-to-table bicycle rights whatever. Anim keffiyeh carles cardigan. Velit seitan mcsweeney's photo booth 3 wolf moon irure. Cosby sweater lomo jean shorts, williamsburg hoodie minim qui you probably haven't heard of them et cardigan trust fund culpa biodiesel wes anderson aesthetic. Nihil tattooed accusamus, cred irony biodiesel keffiyeh artisan ullamco consequat.
Keytar twee blog, culpa messenger bag marfa whatever delectus food truck. Sapiente synth id assumenda. Locavore sed helvetica cliche irony, thundercats you probably haven't heard of them consequat hoodie gluten-free lo-fi fap aliquip. Labore elit placeat before they sold out, terry richardson proident brunch nesciunt quis cosby sweater pariatur keffiyeh ut helvetica artisan. Cardigan craft beer seitan readymade velit. VHS chambray laboris tempor veniam. Anim mollit minim commodo ullamco thundercats.
Чтобы легко добавить поведение ScrollSpy к вашей навигационной панели, просто добавьте data-spy="scroll"
к элементу, который вы хотите отслеживать (обычно это будет body
), и data-target=".navbar"
для выбора, какую навигацию использовать. Вы будете использовать ScrollSpy с компонентом .nav
.
<body data-spy="scroll" data-target=".navbar">...</body>
Вызовите ScrollSpy через JavaScript:
$('#navbar').scrollspy()
<a href="#home">home</a>
должно соответствовать чему-то в DOM, например <div id="home"></div>
.
При использовании ScrollSpy в сочетании с добавлением или удалением элементов из DOM вам нужно будет вызвать метод refresh так:
$('[data-spy="scroll"]').each(function () { var $spy = $(this).scrollspy('refresh') });
Опции можно передавать через атрибуты данных или JavaScript. Для атрибутов данных добавьте имя опции к data-
, например data-offset=""
.
Имя | тип | по умолчанию | описание |
---|---|---|---|
offset | number | 10 | Пиксели для смещения сверху при расчете положения прокрутки. |
Событие | Описание |
---|---|
activate | Это событие срабатывает, когда новый элемент становится активным в ScrollSpy. |
Добавьте быструю, динамическую функциональность вкладок для перехода через панели локального контента, даже через выпадающие меню.
Raw denim you probably haven't heard of them jean shorts Austin. Nesciunt tofu stumptown aliqua, retro synth master cleanse. Mustache cliche tempor, williamsburg carles vegan helvetica. Reprehenderit butcher retro keffiyeh dreamcatcher synth. Cosby sweater eu banh mi, qui irure terry richardson ex squid. Aliquip placeat salvia cillum iphone. Seitan aliquip quis cardigan american apparel, butcher voluptate nisi qui.
Food truck fixie locavore, accusamus mcsweeney's marfa nulla single-origin coffee squid. Exercitation +1 labore velit, blog sartorial PBR leggings next level wes anderson artisan four loko farm-to-table craft beer twee. Qui photo booth letterpress, commodo enim craft beer mlkshk aliquip jean shorts ullamco ad vinyl cillum PBR. Homo nostrud organic, assumenda labore aesthetic magna delectus mollit. Keytar helvetica VHS salvia yr, vero magna velit sapiente labore stumptown. Vegan fanny pack odio cillum wes anderson 8-bit, sustainable jean shorts beard ut DIY ethical culpa terry richardson biodiesel. Art party scenester stumptown, tumblr butcher vero sint qui sapiente accusamus tattooed echo park.
Etsy mixtape wayfarers, ethical wes anderson tofu before they sold out mcsweeney's organic lomo retro fanny pack lo-fi farm-to-table readymade. Messenger bag gentrify pitchfork tattooed craft beer, iphone skateboard locavore carles etsy salvia banksy hoodie helvetica. DIY synth PBR banksy irony. Leggings gentrify squid 8-bit cred pitchfork. Williamsburg banh mi whatever gluten-free, carles pitchfork biodiesel fixie etsy retro mlkshk vice blog. Scenester cred you probably haven't heard of them, vinyl craft beer blog stumptown. Pitchfork sustainable tofu synth chambray yr.
Trust fund seitan letterpress, keytar raw denim keffiyeh etsy art party before they sold out master cleanse gluten-free squid scenester freegan cosby sweater. Fanny pack portland seitan DIY, art party locavore wolf cliche high life echo park Austin. Cred vinyl keffiyeh DIY salvia PBR, banh mi before they sold out farm-to-table VHS viral locavore cosby sweater. Lomo wolf viral, mustache readymade thundercats keffiyeh craft beer marfa ethical. Wolf salvia freegan, sartorial keffiyeh echo park vegan.
Включите переключаемые вкладки через JavaScript (каждая вкладка должна быть активирована индивидуально):
$('#myTab a').click(function (e) { e.preventDefault(); $(this).tab('show'); })
Вы можете активировать отдельные вкладки несколькими способами:
$('#myTab a[href="#profile"]').tab('show'); // Select tab by name $('#myTab a:first').tab('show'); // Select first tab $('#myTab a:last').tab('show'); // Select last tab $('#myTab li:eq(2) a').tab('show'); // Select third tab (0-indexed)
Вы можете активировать вкладки или табы без написания JavaScript, просто указав data-toggle="tab"
или data-toggle="pill"
на элементе. Добавление классов nav
и nav-tabs
к ul
вкладки применит стили Bootstrap для вкладок.
<ul class="nav nav-tabs"> <li><a href="#home" data-toggle="tab">Home</a></li> <li><a href="#profile" data-toggle="tab">Profile</a></li> <li><a href="#messages" data-toggle="tab">Messages</a></li> <li><a href="#settings" data-toggle="tab">Settings</a></li> </ul>
Активирует элемент вкладки и контейнер контента. Вкладка должна иметь либо data-target
, либо href
, указывающий на узел контейнера в DOM.
<ul class="nav nav-tabs" id="myTab"> <li class="active"><a href="#home">Home</a></li> <li><a href="#profile">Profile</a></li> <li><a href="#messages">Messages</a></li> <li><a href="#settings">Settings</a></li> </ul> <div class="tab-content"> <div class="tab-pane active" id="home">...</div> <div class="tab-pane" id="profile">...</div> <div class="tab-pane" id="messages">...</div> <div class="tab-pane" id="settings">...</div> </div> <script> $(function () { $('#myTab a:last').tab('show'); }) </script>
Событие | Описание |
---|---|
show | Это событие срабатывает при показе вкладки, но до того, как новая вкладка была показана. Используйте event.target и event.relatedTarget , чтобы определить активную вкладку и предыдущую активную вкладку (если она есть) соответственно. |
shown | Это событие срабатывает после того, как вкладка была показана. Используйте event.target и event.relatedTarget для определения активной вкладки и предыдущей активной вкладки (если она есть) соответственно. |
$('a[data-toggle="tab"]').on('shown', function (e) { e.target // activated tab e.relatedTarget // previous tab })
Вдохновлен плагином jQuery.tipsy, написанным Джейсоном Фреймом; Подсказки — это обновленная версия, которая не использует изображения, использует CSS3 для анимаций и атрибуты данных для локального хранения заголовков.
Из соображений производительности подсказки и всплывающие окна являются необязательными, что означает вы должны инициализировать их самостоятельно.
Наведите курсор на ссылки ниже, чтобы увидеть подсказки:
Tight pants next level keffiyeh you probably haven't heard of them. Photo booth beard raw denim letterpress vegan messenger bag stumptown. Farm-to-table seitan, mcsweeney's fixie sustainable quinoa 8-bit american apparel have a terry richardson vinyl chambray. Beard stumptown, cardigans banh mi lomo thundercats. Tofu biodiesel williamsburg marfa, four loko mcsweeney's cleanse vegan chambray. A really ironic artisan whatever keytar, scenester farm-to-table banksy Austin twitter handle freegan cred raw denim single-origin coffee viral.
При использовании подсказок и всплывающих окон с группами ввода Bootstrap вам нужно будет установить опцию container
(описанную ниже), чтобы избежать нежелательных побочных эффектов.
Вызовите подсказку через JavaScript:
$('#example').tooltip(options)
Опции можно передавать через атрибуты данных или JavaScript. Для атрибутов данных добавьте имя опции к data-
, например data-animation=""
.
Имя | тип | по умолчанию | описание |
---|---|---|---|
animation | boolean | true | применить CSS-переход fade к подсказке |
html | boolean | false | Вставьте HTML в подсказку. Если false, метод text jQuery будет использоваться для вставки контента в DOM. Используйте текст, если вы обеспокоены атаками XSS. |
placement | string | function | 'top' | как позиционировать подсказку - top | bottom | left | right |
selector | string | false | Если предоставлен селектор, объекты подсказки будут делегированы к указанным целям. |
title | string | function | '' | значение заголовка по умолчанию, если тег `title` не присутствует |
trigger | string | 'hover focus' | как подсказка срабатывает - click | hover | focus | manual. Обратите внимание, что вы можете передать несколько типов триггеров, разделенных пробелами. |
delay | number | object | 0 |
задержка показа и скрытия подсказки (мс) - не применяется к типу триггера manual Если предоставлено число, задержка применяется к обоим hide/show Структура объекта: |
container | string | false | false |
Добавляет подсказку к конкретному элементу |
<a href="#" data-toggle="tooltip" title="first tooltip">hover over me</a>
Прикрепляет обработчик подсказки к коллекции элементов.
Показывает подсказку элемента.
$('#element').tooltip('show')
Скрывает подсказку элемента.
$('#element').tooltip('hide')
Переключает подсказку элемента.
$('#element').tooltip('toggle')
Скрывает и уничтожает подсказку элемента.
$('#element').tooltip('destroy')
Добавьте небольшие наложения контента, такие как те, что на iPad, в любой элемент для размещения вторичной информации. Наведите курсор на кнопку, чтобы активировать всплывающее окно. Требуется включить Tooltip.
Доступны четыре варианта: top, right, bottom, и left aligned.
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
Нет разметки, так как всплывающие окна генерируются из JavaScript и контента в атрибуте data
.
Включите всплывающие окна через JavaScript:
$('#example').popover(options)
Опции можно передавать через атрибуты данных или JavaScript. Для атрибутов данных добавьте имя опции к data-
, например data-animation=""
.
Имя | тип | по умолчанию | описание |
---|---|---|---|
animation | boolean | true | применить CSS-переход fade к всплывающему окну |
html | boolean | false | Вставьте HTML в всплывающее окно. Если false, метод text jQuery будет использоваться для вставки контента в DOM. Используйте текст, если вы обеспокоены атаками XSS. |
placement | string | function | 'right' | как позиционировать всплывающее окно - top | bottom | left | right |
selector | string | false | если предоставлен селектор, объекты всплывающего окна будут делегированы к указанным целям |
trigger | string | 'click' | как всплывающее окно срабатывает - click | hover | focus | manual |
title | string | function | '' | значение заголовка по умолчанию, если атрибут `title` не присутствует |
content | string | function | '' | значение контента по умолчанию, если атрибут `data-content` не присутствует |
delay | number | object | 0 |
задержка показа и скрытия всплывающего окна (мс) - не применяется к типу триггера manual Если предоставлено число, задержка применяется к обоим hide/show Структура объекта: |
container | string | false | false |
Добавляет всплывающее окно к конкретному элементу |
Из соображений производительности подсказки и всплывающие окна являются необязательными, что означает вы должны инициализировать их самостоятельно.
Инициализирует всплывающие окна для коллекции элементов.
Показывает всплывающее окно элемента.
$('#element').popover('show')
Скрывает всплывающее окно элемента.
$('#element').popover('hide')
Переключает всплывающее окно элемента.
$('#element').popover('toggle')
Скрывает и уничтожает всплывающее окно элемента.
$('#element').popover('destroy')
Добавьте функциональность закрытия для всех сообщений оповещения с помощью этого плагина.
Change this and that and try again. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum.
Включите закрытие оповещения через JavaScript:
$(".alert").alert()
Просто добавьте data-dismiss="alert"
к вашей кнопке закрытия, чтобы автоматически добавить функциональность закрытия для сообщения оповещения.
<a class="close" data-dismiss="alert" href="#">×</a>
Оборачивает все сообщения оповещения с функциональностью закрытия. Чтобы ваши сообщения оповещения анимировались при закрытии, убедитесь, что они уже имеют классы .fade
и .in
.
Закрывает сообщение оповещения.
$(".alert").alert('close')
Класс оповещения Bootstrap предоставляет несколько событий для подключения к функциональности оповещения.
Событие | Описание |
---|---|
close | Это событие срабатывает сразу после вызова метода экземпляра close . |
closed | Это событие срабатывает, когда сообщение оповещения было закрыто (будет ждать завершения CSS-переходов). |
$('#my-alert').bind('closed', function () { // do something… })
Получите базовые стили и гибкую поддержку для схлопывающихся компонентов, таких как аккордеоны и навигация.
* Требуется плагин Transitions для включения.
Используя плагин collapse, мы создали простой виджет аккордеона:
<div class="accordion" id="accordion2"> <div class="accordion-group"> <div class="accordion-heading"> <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseOne"> Collapsible Group Item #1 </a> </div> <div id="collapseOne" class="accordion-body collapse in"> <div class="accordion-inner"> Anim pariatur cliche... </div> </div> </div> <div class="accordion-group"> <div class="accordion-heading"> <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseTwo"> Collapsible Group Item #2 </a> </div> <div id="collapseTwo" class="accordion-body collapse"> <div class="accordion-inner"> Anim pariatur cliche... </div> </div> </div> </div> ...
Вы также можете использовать плагин без разметки аккордеона. Создайте кнопку, которая переключает расширение и сворачивание другого элемента.
<button type="button" class="btn btn-danger" data-toggle="collapse" data-target="#demo"> simple collapsible </button> <div id="demo" class="collapse in"> … </div>
Просто добавьте data-toggle="collapse"
и data-target
к элементу, чтобы автоматически назначить управление схлопывающимся элементом. Атрибут data-target
принимает CSS-селектор для применения схлопывания. Убедитесь, что добавили класс collapse
к схлопывающемуся элементу. Если вы хотите, чтобы он по умолчанию был открыт, добавьте дополнительный класс in
.
Чтобы добавить управление группой, подобным аккордеону, к схлопывающемуся элементу, добавьте атрибут данных data-parent="#selector"
. Обратитесь к демонстрации, чтобы увидеть это в действии.
Включите вручную с помощью:
$(".collapse").collapse()
Опции можно передавать через атрибуты данных или JavaScript. Для атрибутов данных добавьте имя опции к data-
, например data-parent=""
.
Имя | тип | по умолчанию | описание |
---|---|---|---|
parent | selector | false | Если селектор, то все схлопывающиеся элементы под указанным родителем будут закрыты, когда этот схлопывающийся элемент будет показан. (аналогично традиционному поведению аккордеона) |
toggle | boolean | true | Переключает схлопывающийся элемент при вызове |
Активирует ваш контент как схлопывающийся элемент. Принимает необязательный объект опций object
.
$('#myCollapsible').collapse({ toggle: false })
Переключает схлопывающийся элемент на видимый или скрытый.
Показывает схлопывающийся элемент.
Скрывает схлопывающийся элемент.
Класс collapse Bootstrap предоставляет несколько событий для подключения к функциональности схлопывания.
Событие | Описание |
---|---|
show | Это событие срабатывает сразу после вызова метода экземпляра show . |
shown | Это событие срабатывает, когда схлопывающийся элемент становится видимым для пользователя (будет ждать завершения CSS-переходов). |
hide |
Это событие срабатывает сразу после вызова метода экземпляра hide .
|
hidden | Это событие срабатывает, когда схлопывающийся элемент становится скрытым для пользователя (будет ждать завершения CSS-переходов). |
$('#myCollapsible').on('hidden', function () { // do something… })
Ниже приведен пример универсального плагина и компонента для циклического прокручивания элементов, таких как карусель.
<div id="myCarousel" class="carousel slide"> <ol class="carousel-indicators"> <li data-target="#myCarousel" data-slide-to="0" class="active"></li> <li data-target="#myCarousel" data-slide-to="1"></li> <li data-target="#myCarousel" data-slide-to="2"></li> </ol> <!-- Carousel items --> <div class="carousel-inner"> <div class="active item">…</div> <div class="item">…</div> <div class="item">…</div> </div> <!-- Carousel nav --> <a class="carousel-control left" href="#myCarousel" data-slide="prev">‹</a> <a class="carousel-control right" href="#myCarousel" data-slide="next">›</a> </div>
Используйте атрибуты данных для легкого управления положением карусели. data-slide
принимает ключевые слова prev
или next
, которые изменяют положение слайда относительно его текущего положения. Кроме того, используйте data-slide-to
для передачи необработанного индекса слайда в карусель data-slide-to="2"
, который перемещает положение слайда на определенный индекс, начиная с 0
.
Вызовите карусель вручную с помощью:
$('.carousel').carousel()
Опции можно передавать через атрибуты данных или JavaScript. Для атрибутов данных добавьте имя опции к data-
, например data-interval=""
.
Имя | тип | по умолчанию | описание |
---|---|---|---|
interval | number | 5000 | Время задержки между автоматическим циклом элемента. Если false, карусель не будет автоматически циклировать. |
pause | string | "hover" | Приостанавливает цикл карусели при наведении мыши и возобновляет цикл карусели при выходе мыши. |
Инициализирует карусель с необязательным объектом опций object
и начинает цикл через элементы.
$('.carousel').carousel({ interval: 2000 })
Циклически прокручивает элементы карусели слева направо.
Останавливает цикл карусели через элементы.
Циклически прокручивает карусель на определенный кадр (начиная с 0, аналогично массиву).
Циклически прокручивает на предыдущий элемент.
Циклически прокручивает на следующий элемент.
Класс carousel Bootstrap предоставляет два события для подключения к функциональности карусели.
Событие | Описание |
---|---|
slide | Это событие срабатывает сразу после вызова метода экземпляра slide . |
slid | Это событие срабатывает, когда карусель завершила свое перемещение. |
Базовый, легко расширяемый плагин для быстрого создания элегантных typeaheads с любым текстовым полем формы.
<input type="text" data-provide="typeahead">
Вы должны установить autocomplete="off"
, чтобы предотвратить появление стандартных меню браузера над выпадающим списком Bootstrap typeahead.
Добавьте атрибуты данных для регистрации элемента с функциональностью typeahead, как показано в примере выше.
Вызовите typeahead вручную с помощью:
$('.typeahead').typeahead()
Опции можно передавать через атрибуты данных или JavaScript. Для атрибутов данных добавьте имя опции к data-
, например data-source=""
.
Имя | тип | по умолчанию | описание |
---|---|---|---|
source | array, function | [ ] | Источник данных для запроса. Может быть массивом строк или функцией. Функция принимает два аргумента: query значение в поле ввода и process обратный вызов. Функция может использоваться синхронно, возвращая источник данных непосредственно, или асинхронно через один аргумент обратного вызова process . |
items | number | 8 | Максимальное количество элементов для отображения в выпадающем списке. |
minLength | number | 1 | Минимальная длина символов, необходимая для запуска автозаполнения |
matcher | function | case insensitive | Метод, используемый для определения, соответствует ли запрос элементу. Принимает один аргумент, item , с которым нужно протестировать запрос. Доступ к текущему запросу осуществляется через this.query . Возвращает логическое значение true , если запрос соответствует. |
sorter | function | exact match, case sensitive, case insensitive |
Метод, используемый для сортировки результатов автозаполнения. Принимает один аргумент items и имеет область видимости экземпляра typeahead. Доступ к текущему запросу осуществляется через this.query . |
updater | function | returns selected item | Метод, используемый для возврата выбранного элемента. Принимает один аргумент — item — и имеет область видимости экземпляра typeahead. |
highlighter | function | highlights all default matches | Метод, используемый для подсветки результатов автозаполнения. Принимает один аргумент item и имеет область видимости экземпляра typeahead. Должен возвращать HTML. |
Инициализирует поле ввода с typeahead.
Нижнее меню слева является живым примером плагина affix.
Чтобы легко добавить поведение affix к любому элементу, просто добавьте data-spy="affix"
к элементу, который вы хотите отслеживать. Затем используйте смещения для определения, когда переключать фиксацию элемента включена или выключена.
<div data-spy="affix" data-offset-top="200">...</div>
affix
, affix-top
и affix-bottom
. Помните, что при включении affix необходимо проверить потенциально схлопнувшегося родителя, так как он удаляет контент из нормального потока страницы.
Вызовите плагин affix через JavaScript:
$('#navbar').affix()
Опции можно передавать через атрибуты данных или JavaScript. Для атрибутов данных добавьте имя опции к data-
, например data-offset-top="200"
.
Имя | тип | по умолчанию | описание |
---|---|---|---|
offset | number | function | object | 10 | Пиксели для смещения от экрана при расчете положения прокрутки. Если предоставлено одно число, смещение будет применено в обоих направлениях (верх и лево). Чтобы слушать одно направление или несколько уникальных смещений, просто предоставьте объект offset: { x: 10 } . Используйте функцию, когда вам нужно динамически предоставлять смещение (полезно для некоторых адаптивных дизайнов). |