Tumia programu-jalizi ya modali ya JavaScript ya Bootstrap ili kuongeza vidadisi kwenye tovuti yako kwa visanduku vyepesi, arifa za watumiaji, au maudhui maalum kabisa.
Inavyofanya kazi
Kabla ya kuanza na kijenzi cha modali cha Bootstrap, hakikisha kuwa umesoma yafuatayo kwani chaguzi zetu za menyu zimebadilika hivi majuzi.
Moduli hujengwa kwa HTML, CSS na JavaScript. Zimewekwa juu ya kila kitu kingine kwenye hati na huondoa kusongesha kutoka <body>ili maudhui ya modal yasogeze badala yake.
Kubofya kwenye "mandhari" ya modal kutafunga modali kiotomatiki.
Bootstrap inasaidia tu dirisha moja la modal kwa wakati mmoja. Miundo iliyopachikwa haitumiki kwa kuwa tunaamini kuwa matumizi mabaya ya watumiaji.
Modals use position: fixed, ambayo wakati mwingine inaweza kuwa maalum kidogo juu ya utoaji wake. Inapowezekana, weka HTML yako ya modali katika nafasi ya juu ili kuepuka kuingiliwa kwa vipengele vingine. Huenda utakumbana na matatizo wakati wa kuweka kiota .modalndani ya kipengele kingine kisichobadilika.
Kwa mara nyingine tena, kutokana na position: fixed, kuna baadhi ya tahadhari za kutumia moduli kwenye vifaa vya rununu. Tazama hati zetu za usaidizi wa kivinjari kwa maelezo.
Kutokana na jinsi HTML5 inavyofafanua semantiki zake, sifa ya autofocusHTML haina athari katika miundo ya Bootstrap. Ili kufikia athari sawa, tumia JavaScript maalum:
Endelea kusoma kwa maonyesho na miongozo ya matumizi.
Mifano
Vipengele vya modal
Chini ni mfano tuli wa modal (ikimaanisha kuwa yake positionna displayimebatilishwa). Imejumuishwa ni kichwa cha modali, mwili wa modali (inahitajika kwa padding), na kijachini cha modali (si lazima). Tunaomba ujumuishe vichwa vya modal na vitendo vya kuondoa kila inapowezekana, au utoe hatua nyingine ya wazi ya kukataa.
Kichwa cha Modal
Maandishi ya mwili wa Modal huenda hapa.
Onyesho la moja kwa moja
Geuza onyesho la modali ya kufanya kazi kwa kubofya kitufe kilicho hapa chini. Itateleza chini na kufifia kutoka juu ya ukurasa.
Modal title
Woohoo, you're reading this text in a modal!
Mandhari tuli
Mandhari ya nyuma yanapowekwa kuwa tuli, modali haitafungwa wakati wa kubofya nje yake. Bofya kitufe kilicho hapa chini ili kuijaribu.
Modal title
I will not close if you click outside me. Don't even try to press escape key.
Inasogeza maudhui marefu
Miundo inapokua ndefu sana kwa kituo cha kutazama au kifaa cha mtumiaji, husogeza bila ya ukurasa wenyewe. Jaribu onyesho hapa chini ili kuona tunamaanisha nini.
Modal title
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Unaweza pia kuunda moduli inayoweza kusongeshwa ambayo inaruhusu kusogeza mwili wa modali kwa kuongeza .modal-dialog-scrollablekwa .modal-dialog.
Modal title
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Imewekwa katikati
Ongeza .modal-dialog-centeredkwa .modal-dialogkatikati wima katikati ya modali.
Modal title
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Modal title
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Vidokezo vya zana na popover
Vidokezo vya zana na popover vinaweza kuwekwa ndani ya moduli kama inahitajika. Wakati moduli zimefungwa, vidokezo vyovyote vya zana na popover ndani pia huondolewa kiotomatiki.
Tumia mfumo wa gridi ya Bootstrap ndani ya modali kwa kuweka kiota .container-fluidndani ya .modal-body. Kisha, tumia madarasa ya mfumo wa gridi ya kawaida kama ungefanya mahali pengine popote.
Grids in modals
.col-md-4
.col-md-4 .ml-auto
.col-md-3 .ml-auto
.col-md-2 .ml-auto
.col-md-6 .ml-auto
Level 1: .col-sm-9
Level 2: .col-8 .col-sm-6
Level 2: .col-4 .col-sm-6
Kutofautisha maudhui ya modal
Una rundo la vitufe ambavyo vyote huanzisha modali sawa na yaliyomo tofauti kidogo? Tumia event.relatedTargetna sifa za HTMLdata-* (labda kupitia jQuery ) ili kubadilisha yaliyomo kwenye modali kulingana na kitufe kilichobofya.
Ifuatayo ni onyesho la moja kwa moja linalofuatwa na mfano wa HTML na JavaScript. Kwa habari zaidi, soma hati za matukio ya modal kwa maelezo kuhusu relatedTarget.
New message
Badilisha uhuishaji
Tofauti $modal-fade-transformhuamua hali ya mageuzi ya .modal-dialogkabla ya uhuishaji wa modali kufifia, $modal-show-transformkigezo huamua ubadilishaji wa .modal-dialogmwisho wa uhuishaji wa modal fade-in.
Ikiwa unataka kwa mfano uhuishaji wa kukuza, unaweza kuweka $modal-fade-transform: scale(.8).
Ondoa uhuishaji
Kwa moduli zinazoonekana tu badala ya kufifia ili kutazamwa, ondoa .fadedarasa kutoka kwa alama yako ya modal.
Urefu wenye nguvu
Ikiwa urefu wa modali hubadilika wakati umefunguliwa, unapaswa kupiga simu $('#myModal').modal('handleUpdate')ili kurekebisha nafasi ya modali ikiwa upau wa kusogeza utatokea.
Ufikivu
Hakikisha umeongeza aria-labelledby="...", ukirejelea kichwa cha modali, kwa .modal. Zaidi ya hayo, unaweza kutoa maelezo ya kidadisi chako cha modal na aria-describedbyon .modal. Kumbuka kwamba huhitaji kuongeza role="dialog"kwa kuwa tayari tunaiongeza kupitia JavaScript.
Inapachika video za YouTube
Kupachika video za YouTube katika miundo kunahitaji JavaScript ya ziada si kwenye Bootstrap ili kusimamisha uchezaji kiotomatiki na zaidi. Tazama chapisho hili muhimu la Stack Overflow kwa maelezo zaidi.
Ukubwa wa hiari
Moduli zina saizi tatu za hiari, zinapatikana kupitia madarasa ya kurekebisha kuwekwa kwenye .modal-dialog. Saizi hizi huingia katika sehemu fulani za kukatika ili kuepuka pau za kusogeza zilizo mlalo kwenye lango finyu za kutazama.
Ukubwa
Darasa
Modal max-upana
Ndogo
.modal-sm
300px
Chaguomsingi
Hakuna
500px
Kubwa
.modal-lg
800px
Ziada kubwa
.modal-xl
1140px
Modali yetu chaguo-msingi bila darasa la kirekebishaji inajumuisha modali ya ukubwa wa "wastani".
Extra large modal
...
Large modal
...
Small modal
...
Matumizi
Programu-jalizi ya modal hugeuza maudhui yako yaliyofichwa inapohitajika, kupitia sifa za data au JavaScript. Pia huongeza .modal-openkwa <body>kubatilisha tabia ya kusogeza chaguo-msingi na hutoa a .modal-backdropkutoa eneo la kubofya kwa ajili ya kuondoa miundo iliyoonyeshwa unapobofya nje ya modali.
Kupitia sifa za data
Washa modali bila kuandika JavaScript. Weka data-toggle="modal"kwenye kipengele cha kidhibiti, kama kitufe, pamoja na data-target="#foo"au href="#foo"kulenga modi mahususi ya kugeuza.
Kupitia JavaScript
Piga modali na kitambulisho myModalna safu moja ya JavaScript:
Chaguo
Chaguzi zinaweza kupitishwa kupitia sifa za data au JavaScript. Kwa sifa za data, ongeza jina la chaguo kwa data-, kama katika data-backdrop="".
Jina
Aina
Chaguomsingi
Maelezo
mandhari
boolean au kamba'static'
kweli
Inajumuisha kipengele cha mandharinyuma ya modal. Vinginevyo, bainisha statickwa mandhari ambayo haifungi muundo wa kubofya.
kibodi
boolean
kweli
Hufunga modali wakati kitufe cha Escape kinapobozwa
kuzingatia
boolean
kweli
Huweka mkazo kwenye modali inapoanzishwa.
onyesha
boolean
kweli
Inaonyesha moduli inapoanzishwa.
Mbinu
Njia za Asynchronous na mabadiliko
Njia zote za API ni za asynchronous na zinaanzisha mpito . Wanarudi kwa mpigaji mara tu mpito unapoanza lakini kabla haujaisha . Kwa kuongeza, simu ya mbinu kwenye sehemu ya mpito itapuuzwa .
Huwasha maudhui yako kama modali. Inakubali chaguo za hiari object.
.modal('toggle')
Hugeuza modali mwenyewe. Hurejesha kwa mpigaji simu kabla modali haijaonyeshwa au kufichwa (yaani kabla ya tukio shown.bs.modalau hidden.bs.modaltukio).
.modal('show')
Hufungua modali mwenyewe. Hurejesha kwa mpigaji simu kabla modali haijaonyeshwa (yaani kabla ya shown.bs.modaltukio kutokea).
.modal('hide')
Huficha modali mwenyewe. Hurejesha kwa mpigaji simu kabla modali haijafichwa (yaani kabla ya hidden.bs.modaltukio kutokea).
.modal('handleUpdate')
Rekebisha mwenyewe nafasi ya modali ikiwa urefu wa modali hubadilika wakati iko wazi (yaani ikiwa upau wa kusogeza utatokea).
.modal('dispose')
Huharibu modi ya kipengele.
Matukio
Darasa la modali la Bootstrap linafichua matukio machache ya kuunganisha kwenye utendakazi wa modal. Matukio yote ya modal yanarushwa kwa modali yenyewe (yaani kwenye <div class="modal">).
Aina ya Tukio
Maelezo
onyesha.bs.modal
Tukio hili huwaka mara moja wakati shownjia ya mfano inaitwa. Ikisababishwa na kubofya, kipengele kilichobofya kinapatikana kama sifa relatedTargetya tukio.
mfano.bs.ulioonyeshwa
Tukio hili linafutwa wakati modali imefanywa kuonekana kwa mtumiaji (itasubiri mabadiliko ya CSS kukamilika). Ikisababishwa na kubofya, kipengele kilichobofya kinapatikana kama sifa relatedTargetya tukio.
ficha.bs.modal
Tukio hili linafutwa mara moja wakati hidenjia ya mfano imeitwa.
fiche.bs.modal
Tukio hili litafutwa wakati modali imekamilika kufichwa kutoka kwa mtumiaji (itasubiri mabadiliko ya CSS kukamilika).
FichaImezuiwa.b.modali
Tukio hili hutupwa wakati modali inaonyeshwa, mandhari yake ni staticna kubofya nje ya modali au ubonyezo wa kitufe cha kutoroka hufanywa kwa chaguo la kibodi au data-keyboardkuweka false.