JavaScript
Oživite Bootstrap s našim dodatnim JavaScript dodacima izgrađenim na jQueryju. Saznajte više o svakom dodatku, našim podacima i opcijama programskog API-ja i više.
Dodaci se mogu uključiti pojedinačno (koristeći Bootstrapove pojedinačne *.js
datoteke) ili sve odjednom pomoću bootstrap.js
ili umanjenog bootstrap.min.js
(nemojte uključivati oboje).
Neki dodaci i CSS komponente ovise o drugim dodacima. Ako dodate dodatke pojedinačno, svakako provjerite te ovisnosti u dokumentima. Također imajte na umu da svi dodaci ovise o jQueryju (to znači da jQuery mora biti uključen prije datoteka dodataka). Posavjetujte se s našimpackage.json
da biste vidjeli koje su verzije jQueryja podržane.
Naši padajući izbornici, skočni prozori i opisi alata također ovise o Popper.js .
Gotovo svi Bootstrap dodaci mogu se omogućiti i konfigurirati samo putem HTML-a s atributima podataka (naš preferirani način korištenja JavaScript funkcionalnosti). Pazite da koristite samo jedan skup atributa podataka na jednom elementu (npr. ne možete pokrenuti opis alata i modal s istog gumba.)
Međutim, u nekim situacijama može biti poželjno onemogućiti ovu funkciju. Da biste onemogućili API atributa podataka, odvežite sve događaje na prostoru imena dokumenta data-api
ovako:
Alternativno, da ciljate određeni dodatak, samo uključite naziv dodatka kao prostor imena zajedno s prostorom imena data-api ovako:
Bootstrap pruža prilagođene događaje za većinu jedinstvenih radnji dodataka. Općenito, oni dolaze u obliku infinitiva i participa prošlosti - gdje se infinitiv (npr. show
) pokreće na početku događaja, a njegov oblik participa prošlosti (npr. shown
) se pokreće nakon završetka radnje.
Svi infinitivni događaji pružaju preventDefault()
funkcionalnost. Ovo pruža mogućnost zaustavljanja izvršenja radnje prije nego što započne. Vraćanje false iz rukovatelja događajem također će automatski pozvati preventDefault()
.
Također vjerujemo da biste trebali moći koristiti sve Bootstrap dodatke isključivo putem JavaScript API-ja. Svi javni API-ji su pojedinačne, ulančane metode i vraćaju zbirku na koju se djeluje.
Sve metode trebaju prihvatiti opcijski objekt opcija, niz koji cilja na određenu metodu ili ništa (što pokreće dodatak sa zadanim ponašanjem):
Svaki dodatak također izlaže svoj neobrađeni konstruktor na Constructor
svojstvu: $.fn.popover.Constructor
. Ako želite dobiti određenu instancu dodatka, dohvatite je izravno iz elementa: $('[rel="popover"]').data('popover')
.
Sve programske API metode su asinkrone i vraćaju se pozivatelju kada prijelaz započne, ali prije nego što završi .
Kako biste izvršili radnju nakon završetka prijelaza, možete slušati odgovarajući događaj.
Osim toga, poziv metode na prijelaznoj komponenti bit će zanemaren .
Zadane postavke dodatka možete promijeniti izmjenom Constructor.Default
objekta dodatka:
Ponekad je potrebno koristiti Bootstrap dodatke s drugim UI okvirima. U tim okolnostima povremeno može doći do sukoba prostora imena. Ako se to dogodi, možete pozvati .noConflict
dodatak kojem želite vratiti vrijednost.
Verziji svakog Bootstrapovog jQuery dodatka može se pristupiti putem VERSION
svojstva konstruktora dodatka. Na primjer, za dodatak s opisom alata:
Bootstrapovi dodaci ne vraćaju se osobito graciozno kada je JavaScript onemogućen. Ako vam je u ovom slučaju stalo do korisničkog iskustva, upotrijebite <noscript>
kako biste svojim korisnicima objasnili situaciju (i kako ponovno omogućiti JavaScript) i/ili dodajte vlastite prilagođene zamjene.
Knjižnice trećih strana
Bootstrap službeno ne podržava JavaScript biblioteke trećih strana kao što su Prototype ili jQuery UI. Unatoč .noConflict
događajima u prostoru imena, može doći do problema s kompatibilnošću koje morate sami riješiti.
Sve Bootstrapove JavaScript datoteke ovise o util.js
i moraju biti uključene uz druge JavaScript datoteke. Ako koristite kompilirani (ili umanjeni) bootstrap.js
, nema potrebe uključivati ovo—već je tu.
util.js
uključuje uslužne funkcije i osnovni pomoćnik za transitionEnd
događaje kao i CSS emulator prijelaza. Koriste ga drugi dodaci za provjeru podrške za CSS prijelaze i za hvatanje visećih prijelaza.