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.
Pojedinačni ili sastavljeni
Dodaci se mogu uključiti pojedinačno (koristeći Bootstrap's individual js/dist/*.js
), ili sve odjednom pomoću bootstrap.js
ili umanjenog bootstrap.min.js
(nemojte uključivati oboje).
Ako koristite bundler (Webpack, Rollup…), možete koristiti /js/dist/*.js
datoteke koje su spremne za UMD.
Ovisnosti
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 .
Atributi podataka
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:
Selektori
Trenutačno za postavljanje upita DOM elementima koristimo izvorne metode querySelector
i querySelectorAll
zbog performansi, tako da morate koristiti važeće selektore . Ako koristite posebne selektore, na primjer: collapse:Example
svakako ih pobjegnite.
Događaji
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()
.
Programski API
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')
.
Asinkrone funkcije i prijelazi
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
Zadane postavke dodatka možete promijeniti izmjenom Constructor.Default
objekta dodatka:
Nema sukoba
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.
Brojevi verzija
Verziji svakog Bootstrapovog jQuery dodatka može se pristupiti putem VERSION
svojstva konstruktora dodatka. Na primjer, za dodatak s opisom alata:
Nema posebnih zamjena kada je JavaScript onemogućen
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.
Util
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.
Sredstvo za dezinfekciju
Tooltips i Popovers koriste naš ugrađeni sanitizer za čišćenje opcija koje prihvaćaju HTML.
Zadana whiteList
vrijednost je sljedeća:
Ako želite dodati nove vrijednosti ovoj zadanoj postavci whiteList
, možete učiniti sljedeće:
Ako želite zaobići naš sanitizer jer više volite koristiti namjensku biblioteku, na primjer DOMPurify , trebali biste učiniti sljedeće: