JavaScript

Ажывіце кампаненты Bootstrap — цяпер з 13 карыстацкімі плагінамі jQuery.

Індывідуальныя або складзеныя

Убудовы можна ўключаць паасобку (хоць некаторыя з іх маюць неабходныя залежнасці) або ўсе адразу. І bootstrap.js , і bootstrap.min.js утрымліваюць усе плагіны ў адным файле.

Атрыбуты дадзеных

Вы можаце выкарыстоўваць усе плагіны Bootstrap выключна праз API разметкі, не напісаўшы ніводнага радка JavaScript. Гэта API першага класа Bootstrap, на які вы павінны звяртаць увагу пры выкарыстанні плагіна.

Тым не менш, у некаторых сітуацыях можа быць пажадана адключыць гэтую функцыю. Такім чынам, мы таксама даем магчымасць адключыць API атрыбутаў даных, адвязаўшы ўсе падзеі ў прасторы імёнаў цела з "data-api". Гэта выглядае так:

  1. $ ( 'цела' ). выключана ( '.data-api' )

У якасці альтэрнатывы, каб арыентавацца на пэўны плагін, проста ўключыце імя плагіна ў якасці прасторы імёнаў разам з прасторай імёнаў data-api, як гэта:

  1. $ ( 'цела' ). выключана ( '.alert.data-api' )

Праграмны API

Мы таксама лічым, што вы павінны мець магчымасць выкарыстоўваць усе плагіны Bootstrap выключна праз JavaScript API. Усе агульнадаступныя API з'яўляюцца адзінкавымі метадамі з ланцужком і вяртаюць калекцыю, на якую дзейнічаюць.

  1. $ ( ".btn.danger" ). кнопка ( "пераключальнік" ). addClass ( "тоўсты" )

Усе метады павінны прымаць неабавязковы аб'ект опцый, радок, які накіраваны на пэўны метад, або нічога (што ініцыюе плагін з паводзінамі па змаўчанні):

  1. $ ( "#myModal" ). мадальны () // ініцыялізаваны па змаўчанні
  2. $ ( "#myModal" ). мадальны ({ клавіятура : false }) // ініцыялізуецца без клавіятуры
  3. $ ( "#myModal" ). modal ( 'show' ) // ініцыялізуе і неадкладна выклікае show

Кожны плагін таксама паказвае свой неапрацаваны канструктар ва ўласцівасці Constructor: $.fn.popover.Constructor. Калі вы жадаеце атрымаць пэўны асобнік плагіна, атрымайце яго непасрэдна з элемента: $('[rel=popover]').data('popover').

Ніякага канфлікту

Часам неабходна выкарыстоўваць плагіны Bootstrap з іншымі структурамі карыстацкага інтэрфейсу. У такіх абставінах перыядычна могуць узнікаць сутыкненні прасторы імёнаў. Калі гэта адбудзецца, вы можаце выклікаць .noConflictплагін, значэнне якога хочаце вярнуць.

  1. var bootstrapButton = $ . fn . кнопка . noConflict () // вяртанне $.fn.button да раней прысвоенага значэння
  2. $ . fn . bootstrapBtn = bootstrapButton // даць $().bootstrapBtn функцыі загрузкі

Падзеі

Bootstrap забяспечвае ўласныя падзеі для большасці унікальных дзеянняў плагіна. Як правіла, яны бываюць у форме інфінітыва і дзеепрыметніка прошлага часу - дзе інфінітыў (напр. show) спрацоўвае ў пачатку падзеі, а яго форма прошлага дзеепрыметніка (напр. shown) спрацоўвае пасля завяршэння дзеяння.

Усе бясконцыя падзеі забяспечваюць функцыянальнасць preventDefault. Гэта забяспечвае магчымасць спыніць выкананне дзеяння да яго пачатку.

  1. $ ( '#myModal' ). on ( 'паказаць' , функцыя ( e ) {
  2. if (! data ) вяртае e . preventDefault () // спыняе паказ мадальнага
  3. })

Пра пераходы

Для простых эфектаў пераходу ўключыце bootstrap-transition.js адзін раз разам з іншымі файламі JS. Калі вы выкарыстоўваеце скампіляваны (або скарочаны) bootstrap.js , няма неабходнасці ўключаць яго — ён ужо ёсць.

Случаі выкарыстання

Некалькі прыкладаў плагіна пераходу:

  • Слізгаценне або знікненне ў мадальных
  • Згасанне ўкладак
  • Згасанне абвестак
  • Рассоўныя каруселі

Прыклады

Modals - гэта абцякальныя, але гнуткія дыялогавыя падказкі з мінімальнымі неабходнымі функцыянальнымі магчымасцямі і разумнымі наладамі па змаўчанні.

Статычны прыклад

Візуалізаваны мадальны з загалоўкам, тэкстам і наборам дзеянняў у ніжнім калонтытуле.

  1. <div class = "modal hide fade" >
  2. <div class = "modal-header" >
  3. <button type = "button" class = "close" data-dismiss = "modal" aria-hidden = "true" > × </button>
  4. <h3> Мадальны загаловак </h3>
  5. </div>
  6. <div class = "modal-body" >
  7. <p> Адно цудоўнае цела… </p>
  8. </div>
  9. <div class = "modal-footer" >
  10. <a href = "#" class = "btn" > Зачыніць </a>
  11. <a href = "#" class = "btn btn-primary" > Захаваць змены </a>
  12. </div>
  13. </div>

Жывая дэманстрацыя

Пераключыце мадальны рэжым праз JavaScript, націснуўшы кнопку ніжэй. Ён будзе слізгаць уніз і знікаць з верхняй часткі старонкі.

  1. <!-- Кнопка для запуску мадальнага -->
  2. <a href = "#myModal" role = "button" class = "btn" data-toggle = "modal" > Запусціць дэма-мадальны </a>
  3.  
  4. <!-- Мадальны -->
  5. <div id = "myModal" class = "modal hide fade" tabindex = "-1" role = "dialog" aria-labelledby = "myModalLabel" aria-hidden = "true" >
  6. <div class = "modal-header" >
  7. <button type = "button" class = "close" data-dismiss = "modal" aria-hidden = "true" > × </button>
  8. <h3 id = "myModalLabel" > Мадальны загаловак </h3>
  9. </div>
  10. <div class = "modal-body" >
  11. <p> Адно цудоўнае цела… </p>
  12. </div>
  13. <div class = "modal-footer" >
  14. <button class = "btn" data-dismiss = "modal" aria-hidden = "true" > Зачыніць </button>
  15. <button class = "btn btn-primary" > Захаваць змены </button>
  16. </div>
  17. </div>

Выкарыстанне

Праз атрыбуты дадзеных

Актывуйце мадальны без напісання JavaScript. Усталюйце data-toggle="modal"элемент кантролера, напрыклад кнопку, разам з data-target="#foo"або href="#foo", каб нацэліць на пэўны мадаль для пераключэння.

  1. <button type = "button" data-toggle = "modal " data-target = "#myModal" > Запусціць мадальны </button>

Праз JavaScript

Выклік мадальнага з ідэнтыфікатарам myModalз дапамогай аднаго радка JavaScript:

  1. $ ( '#myModal' ). мадальны ( варыянты )

Параметры

Параметры могуць быць перададзены праз атрыбуты дадзеных або JavaScript. Для атрыбутаў дадзеных дадайце назву опцыі да data-, як у data-backdrop="".

Імя тыпу па змаўчанні апісанне
заднік лагічны праўда Уключае элемент мадальнага фону. У якасці альтэрнатывы ўкажыце staticдля фону, які не закрывае мадальнае пры пстрычцы.
клавіятура лагічны праўда Закрывае мадальнае, калі націснута клавіша выхаду
паказаць лагічны праўда Паказвае мадальнае пры ініцыялізацыі.
аддалены шлях ілжывы

Калі аддалены URL-адрас, кантэнт будзе загружаны з дапамогай loadметаду jQuery і ўстаўлены ў .modal-body. Калі вы выкарыстоўваеце API дадзеных, у якасці альтэрнатывы вы можаце выкарыстоўваць hrefтэг для ўказання аддаленай крыніцы. Прыклад гэтага паказаны ніжэй:

  1. <a data-toggle="modal" href="remote.html" data-target="#modal">click me</a>

Метады

.modal (параметры)

Актывуе ваш кантэнт як мадальны. Прымае дадатковыя параметры object.

  1. $ ( '#myModal' ). мадальны ({
  2. клавіятура : ілжыва
  3. })

.modal('пераключыць')

Уручную пераключае мадальнае.

  1. $ ( '#myModal' ). мадальны ( 'пераключыць' )

.modal('паказаць')

Уручную адкрывае мадальнае.

  1. $ ( '#myModal' ). мадальны ( 'паказаць' )

.modal('схаваць')

Уручную хавае мадальнае.

  1. $ ( '#myModal' ). мадальны ( 'схаваць' )

Падзеі

Мадальны клас Bootstrap паказвае некалькі падзей для падключэння да мадальнай функцыянальнасці.

Падзея Апісанне
паказаць Гэта падзея запускаецца неадкладна пры showвыкліку метаду асобніка.
паказана Гэта падзея запускаецца, калі мадальны элемент становіцца бачным для карыстальніка (будзе чакаць завяршэння пераходаў CSS).
схаваць Гэта падзея запускаецца адразу пасля hideвыкліку метаду асобніка.
схаваны Гэта падзея запускаецца, калі мадаль скончыў быць схаваным ад карыстальніка (будзе чакаць завяршэння пераходаў CSS).
  1. $ ( '#myModal' ). on ( 'hidden' , function () {
  2. // зрабіць нешта...
  3. })

Прыклад у панэлі навігацыі

Плагін ScrollSpy прызначаны для аўтаматычнага абнаўлення мэт навігацыі на аснове пазіцыі пракруткі. Пракруціце вобласць пад панэллю навігацыі і паглядзіце, як змяняецца актыўны клас. Выпадальныя падпункты таксама будуць вылучаны.

@тоўсты

Рэкламныя легінсы кейтар, бранч ід арт вечарынка долар працы. Pitchfork yr enim lo-fi, перш чым яны раскупілі qui. Правы на веласіпеды Tumblr ад фермы да стала. Кардіган Anim keffiyeh Carles. Velit seitan mcsweeney's photo booth 3 wolf moon irure. Швэдар Cosby, джынсавыя шорты ў стылі лома, талстоўка з капюшонам Williamsburg, мінімальная талстоўка, пра якую вы, напэўна, не чулі, і кардыган, траставы фонд, эстэтыка біядызеля Уэса Андэрсана. Nihil вытатуяваны акузамус, іронія біядызель keffiyeh рамеснік ullamco consequat.

@mdo

Веніям марфа вусы скейтборд, адзіпісінг фугіат вяліт вілы барада. Барада Фрыгана, як купідатат Вера Максуіні. Cupidatat four loko nisi, ea helvetica nulla carles. Швэдар Косбі з татуіроўкамі, фуд-трак, вінілавая кружэлка mcsweeney's quis non freegan. Lo-fi Уэс Андэрсан +1 швейнае майстэрства. Carles неэстэтычнае практыкаванне quis gentrify. Brooklyn adipisicing vice beer vice keytar deserunt.

адзін

Occaecat commodo aliqua delectus. Fap крафтавае піва дэзерунт скейтборд ea. Lomo bicycle rights adipisicing banh mi, velit ea sunt next level locavore single-origin кава in magna veniam. High life id вініл, echo park consequat quis aliquip banh mi pitchfork. Vero VHS est adipisicing. Consectetur nisi мініяцюрная сумка DIY. 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.

three

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. Сапіентэ сінтэз ідэнтыфікатар мяркуецца. Locavore sed helvetica cliche іронія, thundercats, вы напэўна не чулі пра іх consequat талстоўка без глютена lo-fi fap aliquip. Labore elit placeat, перш чым яны былі распрададзеныя, Тэры Рычардсан прадастаўляў позні сняданак, не знайшоўшы касбі швэдар, парыятур кефія, або helvetica artisan. Кардіган крафтавы піва сейтан гатовы веліт. VHS chambray laboris tempor veniam. Anim mollit minim commodo ullamco thundercats.


Выкарыстанне

Праз атрыбуты дадзеных

Каб лёгка дадаць паводзіны шпіёна для пракруткі ў верхнюю панэль навігацыі, проста дадайце data-spy="scroll"элемент, за якім вы хочаце сачыць (часцей за ўсё гэта будзе цела), і data-target=".navbar"выберыце, якую навігацыю выкарыстоўваць. Вы захочаце выкарыстоўваць ScrollSpy з .navкампанентам.

  1. <body data-spy = "scroll" data-target = ".navbar" > ... </body>

Праз JavaScript

Выклік ScrollSpy праз JavaScript:

  1. $ ( '#navbar' ). ScrollSpy ()
Галаву ўверх! Спасылкі на панэлі навігацыі павінны мець дазвольныя ідэнтыфікатары. Напрыклад, <a href="#home">home</a>павінен адпавядаць чаму-то ў доме, як <div id="home"></div>.

Метады

.scrollspy('абнавіць')

Пры выкарыстанні scrollspy у спалучэнні з даданнем або выдаленнем элементаў з DOM вам трэба будзе выклікаць метад абнаўлення так:

  1. $ ( '[data-spy="пракрутка"]' ). кожны ( функцыя () {
  2. var $spy = $ ( гэта ). scrollspy ( 'абнавіць' )
  3. });

Параметры

Параметры могуць быць перададзены праз атрыбуты дадзеных або JavaScript. Для атрыбутаў дадзеных дадайце назву опцыі да data-, як у data-offset="".

Імя тыпу па змаўчанні апісанне
зрушэнне лік 10 Пікселі для зрушэння ад верху пры разліку пазіцыі пракруткі.

Падзеі

Падзея Апісанне
актываваць Гэта падзея спрацоўвае кожны раз, калі новы элемент актывуецца ScrollSpy.

Прыклады ўкладак

Дадайце хуткую дынамічную функцыянальнасць укладак для пераходу паміж панэлямі лакальнага кантэнту, нават праз выпадальныя меню.

Неапрацаваны дэнім, вы напэўна не чулі пра іх джынсавыя шорты Осцін. Nesciunt tofu stumptown aliqua, рэтра-сінтэзатар майстар ачысткі. Moustache cliche tempor, williamsburg carles vegan helvetica. Reprehenderit butcher retro keffiyeh dreamcatcher synth. Швэдар Cosby eu banh mi, qui irure Тэры Рычардсан былы кальмар. Aliquip placeat salvia cillum iphone. Seitan aliquip quis кардыган амерыканскае адзенне, мяснік 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.


Выкарыстанне

Уключыць укладкі з дапамогай JavaScript (кожную ўкладку неабходна актываваць асобна):

  1. $ ( '#myTab a' ). націсніце ( функцыя ( e ) {
  2. е . прадухіліць Па змаўчанні ();
  3. $ ( гэта ). ўкладка ( 'паказаць' );
  4. })

Вы можаце актываваць асобныя ўкладкі некалькімі спосабамі:

  1. $ ( '#myTab a[href="#profile"]' ). ўкладка ( 'паказаць' ); // Выберыце ўкладку па імені
  2. $ ( '#myTab a:first' ). ўкладка ( 'паказаць' ); // Выберыце першую ўкладку
  3. $ ( '#myTab a:last' ). ўкладка ( 'паказаць' ); // Выберыце апошнюю ўкладку
  4. $ ( '#myTab li:eq(2) a' ). ўкладка ( 'паказаць' ); // Выберыце трэцюю ўкладку (індэксавана 0)

Разметка

Вы можаце актываваць навігацыю па ўкладках або таблетках без напісання JavaScript, проста ўказаўшы data-toggle="tab"або data-toggle="pill"на элеменце. Даданне класаў navі nav-tabsна ўкладку ulпрыменіць стыль укладкі Bootstrap.

  1. <ul class = "nav nav-tabs" >
  2. <li><a href = "#home" data-toggle = "tab" > Галоўная </a></li>
  3. <li><a href = "#profile" data-toggle = "tab" > Профіль </a></li>
  4. <li><a href = "#messages" data-toggle = "tab" > Паведамленні </a></li>
  5. <li><a href = "#settings" data-toggle = "tab" > Налады </a></li>
  6. </ul>

Метады

$().таб

Актывуе элемент укладкі і кантэйнер змесціва. На ўкладцы павінна быць альбо data-targetабо, hrefарыентаванае на вузел кантэйнера ў DOM.

  1. <ul class = "nav nav-tabs" id = "myTab" >
  2. <li class = "active" ><a href = "#home" > Галоўная </a></li>
  3. <li><a href = "#profile" > Профіль </a></li>
  4. <li><a href = "#messages" > Паведамленні </a></li>
  5. <li><a href = "#settings" > Налады </a></li>
  6. </ul>
  7.  
  8. <div class = "tab-content" >
  9. <div class = "актыўная панэль укладак" id = "home" > ... </div>
  10. <div class = "tab-pane" id = "profile" > ... </div>
  11. <div class = "tab-pane" id = "messages" > ... </div>
  12. <div class = "tab-pane" id = "settings" > ... </div>
  13. </div>
  14.  
  15. <скрыпт>
  16. $ ( функцыя () {
  17. $ ( '#myTab a:last' ). ўкладка ( 'паказаць' );
  18. })
  19. </script>

Падзеі

Падзея Апісанне
паказаць Гэта падзея запускаецца падчас паказу ўкладак, але да таго, як будзе паказана новая ўкладка. Выкарыстоўвайце event.targetі event.relatedTarget, каб нацэліць на актыўную ўкладку і папярэднюю актыўную ўкладку (калі ёсць) адпаведна.
паказана Гэта падзея спрацоўвае падчас паказу ўкладак пасля паказу ўкладкі. Выкарыстоўвайце event.targetі event.relatedTarget, каб нацэліць на актыўную ўкладку і папярэднюю актыўную ўкладку (калі ёсць) адпаведна.
  1. $ ( 'a[data-toggle="tab"]' ). on ( 'паказана' , функцыя ( e ) {
  2. е . мэта // актываваная таб
  3. е . relatedTarget // папярэдняя ўкладка
  4. })

Прыклады

Натхнёны выдатным убудовай jQuery.tipsy, напісаным Джэйсанам Фрэймам; Падказкі - гэта абноўленая версія, якая не абапіраецца на выявы, выкарыстоўвае CSS3 для анімацыі і атрыбуты даных для лакальнага захоўвання загалоўкаў.

У мэтах павышэння прадукцыйнасці ўсплывальная падказка і ўсплывальнае апісанне дадзеных даступныя, што азначае, што вы павінны ініцыялізаваць іх самастойна .

Навядзіце курсор на спасылкі ніжэй, каб убачыць падказкі:

Вузкія штаны новага ўзроўню кефія , вы напэўна не чулі пра іх. Photobooth beard raw denim highprint веганская сумка-мессенджер stumptown. Сейтан ад фермы да стала, 8-бітнае амерыканскае адзенне McSweeney's Sustainable quinoa мае вінілавае шамбрэ Тэры Рычардсана . Барада стамптаун, кардіганы banh mi lomo thundercats. Біядызельнае паліва тофу, уільямсбургская марфа, веганскі шамбре з чатырох лока Максвіні. Сапраўды іранічны рамеснік незалежна ад таго, кейтар , сцэніст ад фермы да стала, Бэнксі Осцін, твітэр, ручка , фрыган, крэда, сырая джынсавая кава, вірус аднаго паходжання.

Чатыры кірункі

Падказкі ў групах уводу

Пры выкарыстанні ўсплывальных падказак і ўсплывальных паведамленняў з групамі ўводу Bootstrap вам трэба будзе ўсталяваць containerопцыю (дакументавана ніжэй), каб пазбегнуць непажаданых пабочных эфектаў.


Выкарыстанне

Запусціць падказку праз JavaScript:

  1. $ ( '#прыклад' ). падказка ( варыянты )

Параметры

Параметры могуць быць перададзены праз атрыбуты дадзеных або JavaScript. Для атрыбутаў дадзеных дадайце назву опцыі да data-, як у data-animation="".

Імя тыпу па змаўчанні апісанне
анімацыя лагічны праўда прымяніць пераход CSS Fade да падказкі
html лагічны ілжывы Устаўце html у падказку. textКалі false, для ўстаўкі кантэнту ў dom будзе выкарыстоўвацца метад jquery . Выкарыстоўвайце тэкст, калі вы турбуецеся аб атаках XSS.
размяшчэнне радок | функцыя "топ" як размясціць падказку - зверху | унізе | злева | справа
селектар радок ілжывы Калі прадастаўляецца селектар, аб'екты ўсплывальнай падказкі будуць дэлегаваны ўказаным мэтам.
назва радок | функцыя '' значэнне загалоўка па змаўчанні, калі тэг `title` адсутнічае
трыгер радок "фокус пры навядзенні" як спрацоўвае падказка - пстрычка | лунаць | фокус | кіраўніцтва. Звярніце ўвагу, што вы перадаеце некалькі трыгераў, падзеленыя прабеламі, тыпы трыгераў.
затрымка нумар | аб'ект 0

затрымка паказу і схавання ўсплываючай падказкі (мс) - не адносіцца да ручнога тыпу запуску

Калі ўказана лічба, затрымка прымяняецца як для схавання, так і для паказу

Структура аб'екта:delay: { show: 500, hide: 100 }

кантэйнер радок | ілжывы ілжывы

Дадае падказку да пэўнага элементаcontainer: 'body'

Галаву ўверх! Параметры для асобных усплывальных падказак можна таксама задаць з дапамогай атрыбутаў даных.

Разметка

  1. <a href = "#" data-toggle = "tooltip" title = "first tooltip" > навядзіце курсор на мяне </a>

Метады

$().tooltip(параметры)

Далучае апрацоўшчык падказкі да калекцыі элементаў.

.tooltip('паказаць')

Адкрывае падказку элемента.

  1. $ ( '#элемент' ). падказка ( 'паказаць' )

.tooltip('схаваць')

Хавае падказку элемента.

  1. $ ( '#элемент' ). падказка ( 'схаваць' )

.tooltip('пераключыць')

Пераключае падказку элемента.

  1. $ ( '#элемент' ). падказка ( 'пераключэнне' )

.tooltip('знішчыць')

Хавае і знішчае падказку элемента.

  1. $ ( '#элемент' ). падказка ( 'знішчыць' )

Прыклады

Дадайце невялікія накладкі змесціва, напрыклад, на iPad, да любога элемента для размяшчэння другаснай інфармацыі. Навядзіце курсор на кнопку, каб выклікаць усплывальнае акно. Патрабуецца ўключыць падказку .

Статычны повер

Даступныя чатыры варыянты: выраўноўванне паверсе, справа, унізе і па левым краі.

Поповер топ

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.

Popover bottom

Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.

Popover left

Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.

No markup shown as popovers are generated from JavaScript and content within a data attribute.

Live demo

Four directions


Usage

Enable popovers via JavaScript:

  1. $('#example').popover(options)

Options

Options can be passed via data attributes or JavaScript. For data attributes, append the option name to data-, as in data-animation="".

Name type default description
animation boolean true apply a css fade transition to the tooltip
html boolean false Insert html into the popover. If false, jquery's text method will be used to insert content into the dom. Use text if you're worried about XSS attacks.
placement string | function 'right' how to position the popover - top | bottom | left | right
selector string false if a selector is provided, tooltip objects will be delegated to the specified targets
trigger string 'click' how popover is triggered - click | hover | focus | manual
title string | function '' default title value if `title` attribute isn't present
content string | function '' default content value if `data-content` attribute isn't present
delay number | object 0

delay showing and hiding the popover (ms) - does not apply to manual trigger type

If a number is supplied, delay is applied to both hide/show

Object structure is: delay: { show: 500, hide: 100 }

container string | false false

Appends the popover to a specific element container: 'body'

Heads up! Options for individual popovers can alternatively be specified through the use of data attributes.

Markup

For performance reasons, the Tooltip and Popover data-apis are opt in. If you would like to use them just specify a selector option.

Methods

$().popover(options)

Initializes popovers for an element collection.

.popover('show')

Reveals an elements popover.

  1. $('#element').popover('show')

.popover('hide')

Hides an elements popover.

  1. $('#element').popover('hide')

.popover('toggle')

Toggles an elements popover.

  1. $('#element').popover('toggle')

.popover('destroy')

Hides and destroys an element's popover.

  1. $('#element').popover('destroy')

Example alerts

Add dismiss functionality to all alert messages with this plugin.

Holy guacamole! Best check yo self, you're not looking too good.

Oh snap! You got an error!

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.

Take this action Or do this


Usage

Enable dismissal of an alert via JavaScript:

  1. $(".alert").alert()

Markup

Just add data-dismiss="alert" to your close button to automatically give an alert close functionality.

  1. <a class="close" data-dismiss="alert" href="#">&times;</a>

Methods

$().alert()

Wraps all alerts with close functionality. To have your alerts animate out when closed, make sure they have the .fade and .in class already applied to them.

.alert('close')

Closes an alert.

  1. $(".alert").alert('close')

Events

Bootstrap's alert class exposes a few events for hooking into alert functionality.

Event Description
close This event fires immediately when the close instance method is called.
closed This event is fired when the alert has been closed (will wait for css transitions to complete).
  1. $('#my-alert').bind('closed', function () {
  2. // do something…
  3. })

Example uses

Do more with buttons. Control button states or create groups of buttons for more components like toolbars.

Stateful

Add data-loading-text="Loading..." to use a loading state on a button.

  1. <button type="button" class="btn btn-primary" data-loading-text="Loading...">Loading state</button>

Single toggle

Add data-toggle="button" to activate toggling on a single button.

  1. <button type="button" class="btn btn-primary" data-toggle="button">Single Toggle</button>

Checkbox

Add data-toggle="buttons-checkbox" for checkbox style toggling on btn-group.

  1. <div class="btn-group" data-toggle="buttons-checkbox">
  2. <button type="button" class="btn btn-primary">Left</button>
  3. <button type="button" class="btn btn-primary">Middle</button>
  4. <button type="button" class="btn btn-primary">Right</button>
  5. </div>

Radio

Add data-toggle="buttons-radio" for radio style toggling on btn-group.

  1. <div class="btn-group" data-toggle="buttons-radio">
  2. <button type="button" class="btn btn-primary">Left</button>
  3. <button type="button" class="btn btn-primary">Middle</button>
  4. <button type="button" class="btn btn-primary">Right</button>
  5. </div>

Usage

Enable buttons via JavaScript:

  1. $('.nav-tabs').button()

Markup

Data attributes are integral to the button plugin. Check out the example code below for the various markup types.

Options

None

Methods

$().button('toggle')

Toggles push state. Gives the button the appearance that it has been activated.

Heads up! You can enable auto toggling of a button by using the data-toggle attribute.
  1. <button type="button" class="btn" data-toggle="button" ></button>

$().button('loading')

Sets button state to loading - disables button and swaps text to loading text. Loading text should be defined on the button element using the data attribute data-loading-text.

  1. <button type="button" class="btn" data-loading-text="loading stuff..." >...</button>
Heads up! Firefox persists the disabled state across page loads. A workaround for this is to use autocomplete="off".

$().button('reset')

Resets button state - swaps text to original text.

$().button(string)

Resets button state - swaps text to any data defined text state.

  1. <button type="button" class="btn" data-complete-text="finished!" >...</button>
  2. <script>
  3. $('.btn').button('complete')
  4. </script>

About

Get base styles and flexible support for collapsible components like accordions and navigation.

* Requires the Transitions plugin to be included.

Example accordion

Using the collapse plugin, we built a simple accordion style widget:

Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
  1. <div class="accordion" id="accordion2">
  2. <div class="accordion-group">
  3. <div class="accordion-heading">
  4. <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseOne">
  5. Collapsible Group Item #1
  6. </a>
  7. </div>
  8. <div id="collapseOne" class="accordion-body collapse in">
  9. <div class="accordion-inner">
  10. Anim pariatur cliche...
  11. </div>
  12. </div>
  13. </div>
  14. <div class="accordion-group">
  15. <div class="accordion-heading">
  16. <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseTwo">
  17. Collapsible Group Item #2
  18. </a>
  19. </div>
  20. <div id="collapseTwo" class="accordion-body collapse">
  21. <div class="accordion-inner">
  22. Anim pariatur cliche...
  23. </div>
  24. </div>
  25. </div>
  26. </div>
  27. ...

You can also use the plugin without the accordion markup. Make a button toggle the expanding and collapsing of another element.

  1. <button type="button" class="btn btn-danger" data-toggle="collapse" data-target="#demo">
  2. simple collapsible
  3. </button>
  4.  
  5. <div id="demo" class="collapse in"></div>

Usage

Via data attributes

Just add data-toggle="collapse" and a data-target to element to automatically assign control of a collapsible element. The data-target attribute accepts a css selector to apply the collapse to. Be sure to add the class collapse to the collapsible element. If you'd like it to default open, add the additional class in.

To add accordion-like group management to a collapsible control, add the data attribute data-parent="#selector". Refer to the demo to see this in action.

Via JavaScript

Enable manually with:

  1. $(".collapse").collapse()

Options

Options can be passed via data attributes or JavaScript. For data attributes, append the option name to data-, as in data-parent="".

Name type default description
parent selector false If selector then all collapsible elements under the specified parent will be closed when this collapsible item is shown. (similar to traditional accordion behavior)
toggle boolean true Toggles the collapsible element on invocation

Methods

.collapse(options)

Activates your content as a collapsible element. Accepts an optional options object.

  1. $('#myCollapsible').collapse({
  2. toggle: false
  3. })

.collapse('toggle')

Toggles a collapsible element to shown or hidden.

.collapse('show')

Shows a collapsible element.

.collapse('hide')

Hides a collapsible element.

Events

Bootstrap's collapse class exposes a few events for hooking into collapse functionality.

Event Description
show This event fires immediately when the show instance method is called.
shown This event is fired when a collapse element has been made visible to the user (will wait for css transitions to complete).
hide This event is fired immediately when the hide method has been called.
hidden This event is fired when a collapse element has been hidden from the user (will wait for css transitions to complete).
  1. $('#myCollapsible').on('hidden', function () {
  2. // do something…
  3. })

Example

A basic, easily extended plugin for quickly creating elegant typeaheads with any form text input.

  1. <input type="text" data-provide="typeahead">

You'll want to set autocomplete="off" to prevent default browser menus from appearing over the Bootstrap typeahead dropdown.


Usage

Via data attributes

Add data attributes to register an element with typeahead functionality as shown in the example above.

Via JavaScript

Call the typeahead manually with:

  1. $('.typeahead').typeahead()

Options

Options can be passed via data attributes or JavaScript. For data attributes, append the option name to data-, as in data-source="".

Name type default description
source array, function [ ] The data source to query against. May be an array of strings or a function. The function is passed two arguments, the query value in the input field and the process callback. The function may be used synchronously by returning the data source directly or asynchronously via the process callback's single argument.
items number 8 The max number of items to display in the dropdown.
minLength number 1 The minimum character length needed before triggering autocomplete suggestions
matcher function case insensitive The method used to determine if a query matches an item. Accepts a single argument, the item against which to test the query. Access the current query with this.query. Return a boolean true if query is a match.
sorter function exact match,
case sensitive,
case insensitive
Method used to sort autocomplete results. Accepts a single argument items and has the scope of the typeahead instance. Reference the current query with this.query.
updater function returns selected item The method used to return selected item. Accepts a single argument, the item and has the scope of the typeahead instance.
highlighter function highlights all default matches Method used to highlight autocomplete results. Accepts a single argument item and has the scope of the typeahead instance. Should return html.

Methods

.typeahead(options)

Initializes an input with a typeahead.

Example

The subnavigation on the left is a live demo of the affix plugin.


Usage

Via data attributes

To easily add affix behavior to any element, just add data-spy="affix" to the element you want to spy on. Then use offsets to define when to toggle the pinning of an element on and off.

  1. <div data-spy="affix" data-offset-top="200">...</div>
Heads up! You must manage the position of a pinned element and the behavior of its immediate parent. Position is controlled by affix, affix-top, and affix-bottom. Remember to check for a potentially collapsed parent when the affix kicks in as it's removing content from the normal flow of the page.

Via JavaScript

Call the affix plugin via JavaScript:

  1. $('#navbar').affix()

Options

Options can be passed via data attributes or JavaScript. For data attributes, append the option name to data-, as in data-offset-top="200".

Name type default description
offset number | function | object 10 Пікселі, якія трэба зрушыць з экрана пры разліку пазіцыі пракруткі. Калі ўказана адна лічба, зрушэнне будзе прымяняцца як у верхнім, так і ў левым кірунках. Каб праслухаць адзін кірунак або некалькі унікальных зрушэнняў, проста ўвядзіце аб'ект offset: { x: 10 }. Выкарыстоўвайце функцыю, калі вам трэба дынамічна забяспечыць зрушэнне (карысна для некаторых адаптыўных дызайнаў).