Slaan oor na hoofinhoud Slaan oor na dokumentnavigasie
Check
in English

Modaal

Gebruik Bootstrap se JavaScript-modale inprop om dialoogvensters by jou werf te voeg vir ligbokse, gebruikerskennisgewings of heeltemal pasgemaakte inhoud.

Hoe dit werk

Voordat u met Bootstrap se modale komponent begin, moet u die volgende lees aangesien ons spyskaartopsies onlangs verander het.

  • Modale word gebou met HTML, CSS en JavaScript. Hulle is oor alles anders in die dokument geposisioneer en verwyder rol van die <body>sodat modale inhoud eerder blaai.
  • Deur op die modale "agtergrond" te klik, sal die modale outomaties toemaak.
  • Bootstrap ondersteun slegs een modale venster op 'n slag. Geneste modale word nie ondersteun nie, aangesien ons glo dat dit swak gebruikerservarings is.
  • Modale gebruik position: fixed, wat soms 'n bietjie spesifiek kan wees oor die weergawe daarvan. Waar moontlik, plaas jou modale HTML in 'n topvlak posisie om moontlike inmenging van ander elemente te vermy. U sal waarskynlik probleme ondervind wanneer u 'n .modalbinne 'n ander vaste element nesmaak.
  • Weereens, as gevolg van position: fixed, is daar 'n paar waarskuwings met die gebruik van modale op mobiele toestelle. Sien ons blaaierondersteuningsdokumente vir besonderhede.
  • As gevolg van hoe HTML5 sy semantiek definieer, het die autofocusHTML-kenmerk geen effek in Bootstrap-modale nie. Om dieselfde effek te bereik, gebruik 'n paar persoonlike JavaScript:
const myModal = document.getElementById('myModal')
const myInput = document.getElementById('myInput')

myModal.addEventListener('shown.bs.modal', () => {
  myInput.focus()
})
Die animasie-effek van hierdie komponent is afhanklik van die prefers-reduced-motionmedianavraag. Sien die verminderde beweging-afdeling van ons toeganklikheidsdokumentasie .

Hou aan lees vir demonstrasies en gebruiksriglyne.

Voorbeelde

Hieronder is 'n statiese modale voorbeeld (wat beteken dat dit positionen displayis oorskryf). Ingesluit is die modale kopskrif, modale liggaam (vereis vir padding), en modale voetskrif (opsioneel). Ons vra dat jy, waar moontlik, modale opskrifte met afwyshandelinge insluit, of 'n ander eksplisiete afwysaksie verskaf.

<div class="modal" tabindex="-1">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title">Modal title</h5>
        <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
      </div>
      <div class="modal-body">
        <p>Modal body text goes here.</p>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
        <button type="button" class="btn btn-primary">Save changes</button>
      </div>
    </div>
  </div>
</div>

Regstreekse demo

Wissel 'n werkende modale demo deur op die knoppie hieronder te klik. Dit sal afgly en vervaag vanaf die bokant van die bladsy.

<!-- Button trigger modal -->
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#exampleModal">
  Launch demo modal
</button>

<!-- Modal -->
<div class="modal fade" id="exampleModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="exampleModalLabel">Modal title</h5>
        <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
      </div>
      <div class="modal-body">
        ...
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
        <button type="button" class="btn btn-primary">Save changes</button>
      </div>
    </div>
  </div>
</div>

Statiese agtergrond

Wanneer agtergrond op staties gestel is, sal die modaal nie toemaak wanneer daar buite geklik word nie. Klik op die knoppie hieronder om dit te probeer.

<!-- Button trigger modal -->
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#staticBackdrop">
  Launch static backdrop modal
</button>

<!-- Modal -->
<div class="modal fade" id="staticBackdrop" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1" aria-labelledby="staticBackdropLabel" aria-hidden="true">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="staticBackdropLabel">Modal title</h5>
        <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
      </div>
      <div class="modal-body">
        ...
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
        <button type="button" class="btn btn-primary">Understood</button>
      </div>
    </div>
  </div>
</div>

Deur lang inhoud te blaai

Wanneer modale te lank word vir die gebruiker se kykpoort of toestel, blaai hulle onafhanklik van die bladsy self. Probeer die demonstrasie hieronder om te sien wat ons bedoel.

Jy kan ook 'n blaaibare modaal skep wat die modale liggaam laat blaai deur by .modal-dialog-scrollablete voeg .modal-dialog.

<!-- Scrollable modal -->
<div class="modal-dialog modal-dialog-scrollable">
  ...
</div>

Vertikaal gesentreer

Voeg .modal-dialog-centeredby .modal-dialogom die modaal vertikaal te sentreer.

<!-- Vertically centered modal -->
<div class="modal-dialog modal-dialog-centered">
  ...
</div>

<!-- Vertically centered scrollable modal -->
<div class="modal-dialog modal-dialog-centered modal-dialog-scrollable">
  ...
</div>

Gereedskapwenke en popovers

Tooltips en popovers kan binne modale geplaas word soos nodig. Wanneer modale gesluit is, word enige gereedskapwenke en popovers binne ook outomaties van die hand gewys.

<div class="modal-body">
  <h5>Popover in a modal</h5>
  <p>This <a href="#" role="button" class="btn btn-secondary" data-bs-toggle="popover" title="Popover title" data-bs-content="Popover body content is set in this attribute.">button</a> triggers a popover on click.</p>
  <hr>
  <h5>Tooltips in a modal</h5>
  <p><a href="#" data-bs-toggle="tooltip" title="Tooltip">This link</a> and <a href="#" data-bs-toggle="tooltip" title="Tooltip">that link</a> have tooltips on hover.</p>
</div>

Gebruik die rooster

Gebruik die Bootstrap-roosterstelsel binne 'n modaal deur .container-fluidbinne die .modal-body. Gebruik dan die normale roosterstelselklasse soos op enige ander plek.

<div class="modal-body">
  <div class="container-fluid">
    <div class="row">
      <div class="col-md-4">.col-md-4</div>
      <div class="col-md-4 ms-auto">.col-md-4 .ms-auto</div>
    </div>
    <div class="row">
      <div class="col-md-3 ms-auto">.col-md-3 .ms-auto</div>
      <div class="col-md-2 ms-auto">.col-md-2 .ms-auto</div>
    </div>
    <div class="row">
      <div class="col-md-6 ms-auto">.col-md-6 .ms-auto</div>
    </div>
    <div class="row">
      <div class="col-sm-9">
        Level 1: .col-sm-9
        <div class="row">
          <div class="col-8 col-sm-6">
            Level 2: .col-8 .col-sm-6
          </div>
          <div class="col-4 col-sm-6">
            Level 2: .col-4 .col-sm-6
          </div>
        </div>
      </div>
    </div>
  </div>
</div>

Wisselende modale inhoud

Het jy 'n klomp knoppies wat almal dieselfde modaal aktiveer met effens verskillende inhoud? Gebruik event.relatedTargeten HTML- data-bs-*kenmerke om die inhoud van die modaal te verander na gelang van watter knoppie geklik is.

Hieronder is 'n lewendige demonstrasie gevolg deur voorbeeld HTML en JavaScript. Vir meer inligting, lees die modale gebeurtenisse dokumente vir besonderhede oor relatedTarget.

html
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#exampleModal" data-bs-whatever="@mdo">Open modal for @mdo</button>
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#exampleModal" data-bs-whatever="@fat">Open modal for @fat</button>
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#exampleModal" data-bs-whatever="@getbootstrap">Open modal for @getbootstrap</button>

<div class="modal fade" id="exampleModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="exampleModalLabel">New message</h5>
        <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
      </div>
      <div class="modal-body">
        <form>
          <div class="mb-3">
            <label for="recipient-name" class="col-form-label">Recipient:</label>
            <input type="text" class="form-control" id="recipient-name">
          </div>
          <div class="mb-3">
            <label for="message-text" class="col-form-label">Message:</label>
            <textarea class="form-control" id="message-text"></textarea>
          </div>
        </form>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
        <button type="button" class="btn btn-primary">Send message</button>
      </div>
    </div>
  </div>
</div>
const exampleModal = document.getElementById('exampleModal')
exampleModal.addEventListener('show.bs.modal', event => {
  // Button that triggered the modal
  const button = event.relatedTarget
  // Extract info from data-bs-* attributes
  const recipient = button.getAttribute('data-bs-whatever')
  // If necessary, you could initiate an AJAX request here
  // and then do the updating in a callback.
  //
  // Update the modal's content.
  const modalTitle = exampleModal.querySelector('.modal-title')
  const modalBodyInput = exampleModal.querySelector('.modal-body input')

  modalTitle.textContent = `New message to ${recipient}`
  modalBodyInput.value = recipient
})

Wissel tussen modale

Wissel tussen veelvuldige modale met 'n slim plasing van die data-bs-targeten data-bs-toggleeienskappe. Byvoorbeeld, jy kan 'n wagwoordterugstelmodaal van binne 'n reeds oop aanmeldmodaal wissel. Neem asseblief kennis dat veelvuldige modale nie gelyktydig oop kan wees nie - hierdie metode wissel eenvoudig tussen twee afsonderlike modale.

Maak eerste modaal oop
html
<div class="modal fade" id="exampleModalToggle" aria-hidden="true" aria-labelledby="exampleModalToggleLabel" tabindex="-1">
  <div class="modal-dialog modal-dialog-centered">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="exampleModalToggleLabel">Modal 1</h5>
        <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
      </div>
      <div class="modal-body">
        Show a second modal and hide this one with the button below.
      </div>
      <div class="modal-footer">
        <button class="btn btn-primary" data-bs-target="#exampleModalToggle2" data-bs-toggle="modal">Open second modal</button>
      </div>
    </div>
  </div>
</div>
<div class="modal fade" id="exampleModalToggle2" aria-hidden="true" aria-labelledby="exampleModalToggleLabel2" tabindex="-1">
  <div class="modal-dialog modal-dialog-centered">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="exampleModalToggleLabel2">Modal 2</h5>
        <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
      </div>
      <div class="modal-body">
        Hide this modal and show the first with the button below.
      </div>
      <div class="modal-footer">
        <button class="btn btn-primary" data-bs-target="#exampleModalToggle" data-bs-toggle="modal">Back to first</button>
      </div>
    </div>
  </div>
</div>
<a class="btn btn-primary" data-bs-toggle="modal" href="#exampleModalToggle" role="button">Open first modal</a>

Verander animasie

Die $modal-fade-transformveranderlike bepaal die transformasietoestand van .modal-dialogvoor die modale inverfop-animasie, die $modal-show-transformveranderlike bepaal die transformasie van .modal-dialogaan die einde van die modale-infade-animasie.

As jy byvoorbeeld 'n inzoom-animasie wil hê, kan jy instel $modal-fade-transform: scale(.8).

Verwyder animasie

Vir modale wat bloot verskyn eerder as om in te vervaag om te sien, verwyder die .fadeklas van jou modale opmaak.

<div class="modal" tabindex="-1" aria-labelledby="..." aria-hidden="true">
  ...
</div>

Dinamiese hoogtes

As die hoogte van 'n modaal verander terwyl dit oop is, moet jy bel myModal.handleUpdate()om die modaal se posisie aan te pas indien 'n skuifbalk verskyn.

Toeganklikheid

Maak seker dat jy aria-labelledby="...", met verwysing na die modale titel, byvoeg .modal. Daarbenewens kan jy 'n beskrywing van jou modale dialoog gee met aria-describedbyop .modal. Let daarop dat jy nie hoef by te voeg nie role="dialog", aangesien ons dit reeds via JavaScript byvoeg.

Inbedding van YouTube-video's

Om YouTube-video's in modale in te sluit, vereis bykomende JavaScript wat nie in Bootstrap is nie om outomaties afspeel te stop en meer. Sien hierdie nuttige Stack Overflow-plasing vir meer inligting.

Opsionele groottes

Modale het drie opsionele groottes, beskikbaar via wysigerklasse om op 'n .modal-dialog. Hierdie groottes skop in by sekere breekpunte om horisontale skuifbalke op nouer uitsigpoorte te vermy.

Grootte Klas Modale maksimum breedte
Klein .modal-sm 300px
Verstek Geen 500px
Groot .modal-lg 800px
Ekstra groot .modal-xl 1140px

Ons verstek modaal sonder wysigerklas vorm die "medium" grootte modaal.

<div class="modal-dialog modal-xl">...</div>
<div class="modal-dialog modal-lg">...</div>
<div class="modal-dialog modal-sm">...</div>

Volskerm modaal

Nog 'n oorheersing is die opsie om 'n modaal op te roep wat die gebruikersaansigportaal dek, beskikbaar via wysigerklasse wat op 'n .modal-dialog.

Klas Beskikbaarheid
.modal-fullscreen Altyd
.modal-fullscreen-sm-down 576px
.modal-fullscreen-md-down 768px
.modal-fullscreen-lg-down 992px
.modal-fullscreen-xl-down 1200px
.modal-fullscreen-xxl-down 1400px
<!-- Full screen modal -->
<div class="modal-dialog modal-fullscreen-sm-down">
  ...
</div>

CSS

Veranderlikes

Bygevoeg in v5.2.0

As deel van Bootstrap se ontwikkelende CSS-veranderlikebenadering, gebruik modale nou plaaslike CSS-veranderlikes op .modalen .modal-backdropvir verbeterde intydse aanpassing. Waardes vir die CSS-veranderlikes word via Sass ingestel, dus word Sass-aanpassing ook steeds ondersteun.

  --#{$prefix}modal-zindex: #{$zindex-modal};
  --#{$prefix}modal-width: #{$modal-md};
  --#{$prefix}modal-padding: #{$modal-inner-padding};
  --#{$prefix}modal-margin: #{$modal-dialog-margin};
  --#{$prefix}modal-color: #{$modal-content-color};
  --#{$prefix}modal-bg: #{$modal-content-bg};
  --#{$prefix}modal-border-color: #{$modal-content-border-color};
  --#{$prefix}modal-border-width: #{$modal-content-border-width};
  --#{$prefix}modal-border-radius: #{$modal-content-border-radius};
  --#{$prefix}modal-box-shadow: #{$modal-content-box-shadow-xs};
  --#{$prefix}modal-inner-border-radius: #{$modal-content-inner-border-radius};
  --#{$prefix}modal-header-padding-x: #{$modal-header-padding-x};
  --#{$prefix}modal-header-padding-y: #{$modal-header-padding-y};
  --#{$prefix}modal-header-padding: #{$modal-header-padding}; // Todo in v6: Split this padding into x and y
  --#{$prefix}modal-header-border-color: #{$modal-header-border-color};
  --#{$prefix}modal-header-border-width: #{$modal-header-border-width};
  --#{$prefix}modal-title-line-height: #{$modal-title-line-height};
  --#{$prefix}modal-footer-gap: #{$modal-footer-margin-between};
  --#{$prefix}modal-footer-bg: #{$modal-footer-bg};
  --#{$prefix}modal-footer-border-color: #{$modal-footer-border-color};
  --#{$prefix}modal-footer-border-width: #{$modal-footer-border-width};
  
  --#{$prefix}backdrop-zindex: #{$zindex-modal-backdrop};
  --#{$prefix}backdrop-bg: #{$modal-backdrop-bg};
  --#{$prefix}backdrop-opacity: #{$modal-backdrop-opacity};
  

Sass veranderlikes

$modal-inner-padding:               $spacer;

$modal-footer-margin-between:       .5rem;

$modal-dialog-margin:               .5rem;
$modal-dialog-margin-y-sm-up:       1.75rem;

$modal-title-line-height:           $line-height-base;

$modal-content-color:               null;
$modal-content-bg:                  $white;
$modal-content-border-color:        var(--#{$prefix}border-color-translucent);
$modal-content-border-width:        $border-width;
$modal-content-border-radius:       $border-radius-lg;
$modal-content-inner-border-radius: subtract($modal-content-border-radius, $modal-content-border-width);
$modal-content-box-shadow-xs:       $box-shadow-sm;
$modal-content-box-shadow-sm-up:    $box-shadow;

$modal-backdrop-bg:                 $black;
$modal-backdrop-opacity:            .5;

$modal-header-border-color:         var(--#{$prefix}border-color);
$modal-header-border-width:         $modal-content-border-width;
$modal-header-padding-y:            $modal-inner-padding;
$modal-header-padding-x:            $modal-inner-padding;
$modal-header-padding:              $modal-header-padding-y $modal-header-padding-x; // Keep this for backwards compatibility

$modal-footer-bg:                   null;
$modal-footer-border-color:         $modal-header-border-color;
$modal-footer-border-width:         $modal-header-border-width;

$modal-sm:                          300px;
$modal-md:                          500px;
$modal-lg:                          800px;
$modal-xl:                          1140px;

$modal-fade-transform:              translate(0, -50px);
$modal-show-transform:              none;
$modal-transition:                  transform .3s ease-out;
$modal-scale-transform:             scale(1.02);

Lus

Responsiewe volskerm-modale word gegenereer via die $breakpointskaart en 'n lus in scss/_modal.scss.

@each $breakpoint in map-keys($grid-breakpoints) {
  $infix: breakpoint-infix($breakpoint, $grid-breakpoints);
  $postfix: if($infix != "", $infix + "-down", "");

  @include media-breakpoint-down($breakpoint) {
    .modal-fullscreen#{$postfix} {
      width: 100vw;
      max-width: none;
      height: 100%;
      margin: 0;

      .modal-content {
        height: 100%;
        border: 0;
        @include border-radius(0);
      }

      .modal-header,
      .modal-footer {
        @include border-radius(0);
      }

      .modal-body {
        overflow-y: auto;
      }
    }
  }
}

Gebruik

Die modale inprop skakel jou verborge inhoud op aanvraag, via data-kenmerke of JavaScript. Dit ignoreer ook verstek blaai-gedrag en genereer 'n .modal-backdropom 'n klikarea te verskaf om gewysde modale te verwyder wanneer daar buite die modaal geklik word.

Via data-eienskappe

Wissel

Aktiveer 'n modaal sonder om JavaScript te skryf. Stel data-bs-toggle="modal"op 'n beheerderelement, soos 'n knoppie, saam met 'n data-bs-target="#foo"of href="#foo"om 'n spesifieke modaal te rig om te wissel.

<button type="button" data-bs-toggle="modal" data-bs-target="#myModal">Launch modal</button>

Verwerp

Ontslag kan bereik word met die datakenmerk op 'n knoppie binne die modaal soos hieronder gedemonstreer:

<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>

of op 'n knoppie buite die modaal deur gebruik te maak van die data-bs-targetsoos hieronder gedemonstreer:

<button type="button" class="btn-close" data-bs-dismiss="modal" data-bs-target="#my-modal" aria-label="Close"></button>
Alhoewel beide maniere om 'n modaal te ontslaan ondersteun word, moet u in gedagte hou dat die afwysing van buite 'n modaal nie ooreenstem met die ARIA Authoring Practices Guide dialoog (modale) patroon nie . Doen dit op eie risiko.

Via JavaScript

Skep 'n modaal met 'n enkele reël JavaScript:

const myModal = new bootstrap.Modal(document.getElementById('myModal'), options)
// or
const myModalAlternative = new bootstrap.Modal('#myModal', options)

Opsies

Aangesien opsies deur data-kenmerke of JavaScript deurgegee kan word, kan jy 'n opsienaam byvoeg data-bs-, soos in data-bs-animation="{value}". Maak seker dat jy die kastipe van die opsienaam verander van " camelCase " na " kebab-case " wanneer die opsies deur data-kenmerke deurgegee word. Gebruik byvoorbeeld in data-bs-custom-class="beautifier"plaas van data-bs-customClass="beautifier".

Vanaf Bootstrap 5.2.0 ondersteun alle komponente 'n eksperimentele gereserveerde data-kenmerk data-bs-configwat eenvoudige komponentkonfigurasie as 'n JSON-string kan huisves. Wanneer 'n element data-bs-config='{"delay":0, "title":123}'en data-bs-title="456"kenmerke het, sal die finale titlewaarde wees 456en die afsonderlike data-kenmerke sal waardes wat op gegee word, ignoreer data-bs-config. Daarbenewens kan bestaande data-kenmerke JSON-waardes soos data-bs-delay='{"show":0,"hide":150}'.

Naam Tik Verstek Beskrywing
backdrop boolean,'static' true Sluit 'n modale agtergrondelement in. Alternatiewelik, spesifiseer staticvir 'n agtergrond wat nie die modaal sluit wanneer geklik word nie.
focus boolean true Plaas die fokus op die modaal wanneer geïnisialiseer.
keyboard boolean true Maak die modaal toe wanneer escape-sleutel gedruk word.

Metodes

Asinchroniese metodes en oorgange

Alle API-metodes is asynchronies en begin 'n oorgang . Hulle keer terug na die oproeper sodra die oorgang begin is, maar voordat dit eindig . Daarbenewens sal 'n metode-oproep op 'n oorgangskomponent geïgnoreer word .

Sien ons JavaScript-dokumentasie vir meer inligting .

Slaag opsies

Aktiveer jou inhoud as 'n modaal. Aanvaar 'n opsionele opsie object.

const myModal = new bootstrap.Modal('#myModal', {
  keyboard: false
})
Metode Beskrywing
dispose Vernietig 'n element se modaal. (Verwyder gestoorde data op die DOM-element)
getInstance Statiese metode waarmee u die modale instansie kan kry wat met 'n DOM-element geassosieer word.
getOrCreateInstance Statiese metode wat jou toelaat om die modale instansie wat met 'n DOM-element geassosieer word te kry, of 'n nuwe een te skep ingeval dit nie geïnisialiseer is nie.
handleUpdate Pas die modaal se posisie handmatig aan as die hoogte van 'n modaal verander terwyl dit oop is (dws indien 'n rolbalk verskyn).
hide Versteek 'n modaal handmatig. Keer terug na die oproeper voordat die modaal eintlik versteek is (dws voor die hidden.bs.modalgebeurtenis plaasvind).
show Maak 'n modaal handmatig oop. Keer terug na die oproeper voordat die modaal werklik gewys is (dws voor die shown.bs.modalgebeurtenis plaasvind). U kan ook 'n DOM-element deurgee as 'n argument wat in die modale gebeurtenisse (as die relatedTargeteiendom) ontvang kan word. (dws const modalToggle = document.getElementById('toggleMyModal'); myModal.show(modalToggle).
toggle Wissel 'n modaal handmatig. Keer terug na die oproeper voordat die modaal werklik gewys of versteek is (dws voordat die shown.bs.modalof hidden.bs.modalgebeurtenis plaasvind).

Gebeurtenisse

Bootstrap se modale klas stel 'n paar gebeurtenisse bloot om by modale funksionaliteit in te skakel. Alle modale gebeurtenisse word op die modaal self afgevuur (dws by die <div class="modal">).

Gebeurtenis Beskrywing
hide.bs.modal Hierdie gebeurtenis word onmiddellik afgevuur wanneer die hideinstansiemetode geroep is.
hidden.bs.modal Hierdie gebeurtenis word afgevuur wanneer die modaal klaar vir die gebruiker versteek is (sal wag vir CSS-oorgange om te voltooi).
hidePrevented.bs.modal Hierdie gebeurtenis word afgevuur wanneer die modaal gewys word, die agtergrond daarvan is staticen 'n klik buite die modaal uitgevoer word. Die gebeurtenis word ook afgevuur wanneer die ontsnap-sleutel gedruk word en die keyboardopsie is ingestel op false.
show.bs.modal Hierdie gebeurtenis begin onmiddellik wanneer die showinstansiemetode geroep word. As dit deur 'n klik veroorsaak word, is die geklikte element beskikbaar as die relatedTargeteienskap van die gebeurtenis.
shown.bs.modal Hierdie gebeurtenis word afgevuur wanneer die modaal vir die gebruiker sigbaar gemaak is (sal wag vir CSS-oorgange om te voltooi). As dit deur 'n klik veroorsaak word, is die geklikte element beskikbaar as die relatedTargeteienskap van die gebeurtenis.
const myModalEl = document.getElementById('myModal')
myModalEl.addEventListener('hidden.bs.modal', event => {
  // do something...
})