Defnyddiwch ategyn moddol JavaScript Bootstrap i ychwanegu deialogau at eich gwefan ar gyfer blychau golau, hysbysiadau defnyddwyr, neu gynnwys cwbl arferol.
Sut mae'n gweithio
Cyn dechrau ar gydran foddol Bootstrap, gwnewch yn siŵr eich bod chi'n darllen y canlynol gan fod ein hopsiynau bwydlen wedi newid yn ddiweddar.
Mae modiwlau'n cael eu hadeiladu gyda HTML, CSS, a JavaScript. Maent wedi'u lleoli dros bopeth arall yn y ddogfen ac yn tynnu sgrôl o'r <body>fel bod cynnwys moddol yn sgrolio yn lle hynny.
Bydd clicio ar y “cefndir” moddol yn cau'r moddol yn awtomatig.
Dim ond un ffenestr foddol y mae Bootstrap yn ei chynnal ar y tro. Nid yw moddau nythu yn cael eu cefnogi gan ein bod yn credu eu bod yn brofiadau gwael gan ddefnyddwyr.
Mae moddau'n defnyddio position: fixed, a all weithiau fod ychydig yn benodol am ei rendrad. Lle bynnag y bo modd, rhowch eich HTML moddol mewn safle lefel uchaf er mwyn osgoi ymyrraeth bosibl gan elfennau eraill. Mae'n debyg y byddwch chi'n wynebu problemau wrth nythu o .modalfewn elfen sefydlog arall.
Unwaith eto, oherwydd position: fixed, mae rhai cafeatau gyda defnyddio moddau ar ddyfeisiau symudol. Gweler ein dogfennau cymorth porwr am fanylion.
Oherwydd sut mae HTML5 yn diffinio ei semanteg, nid yw'r autofocuspriodoledd HTML yn cael unrhyw effaith mewn moddau Bootstrap. I gyflawni'r un effaith, defnyddiwch JavaScript arferol:
Daliwch ati i ddarllen am demos a chanllawiau defnydd.
Enghreifftiau
Cydrannau moddol
Isod mae enghraifft moddol statig (sy'n golygu ei positionac displaywedi cael ei diystyru). Yn gynwysedig mae'r pennawd moddol, y corff moddol (sy'n ofynnol ar gyfer padding), a'r troedyn moddol (dewisol). Gofynnwn i chi gynnwys penawdau moddol gyda chamau diswyddo pryd bynnag y bo modd, neu ddarparu cam diswyddo penodol arall.
Teitl moddol
Mae testun y corff moddol yn mynd yma.
Demo byw
Toggle demo modd gweithio trwy glicio ar y botwm isod. Bydd yn llithro i lawr ac yn pylu i mewn o frig y dudalen.
Modal title
Woohoo, you're reading this text in a modal!
Sgrolio cynnwys hir
Pan fydd moddau'n mynd yn rhy hir ar gyfer golygfa neu ddyfais y defnyddiwr, maen nhw'n sgrolio'n annibynnol ar y dudalen ei hun. Rhowch gynnig ar y demo isod i weld beth rydym yn ei olygu.
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.
Wedi'i ganoli'n fertigol
Ychwanegu .modal-dialog-centeredat .modal-dialogganol fertigol y moddol.
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.
Awgrymiadau offer a popovers
Gellir gosod awgrymiadau offer a popovers o fewn moddau yn ôl yr angen . Pan fydd moddau ar gau, mae unrhyw awgrymiadau offer a popovers ynddynt hefyd yn cael eu diystyru'n awtomatig.
Defnyddiwch system grid Bootstrap o fewn moddol trwy nythu .container-fluido fewn y .modal-body. Yna, defnyddiwch y dosbarthiadau system grid arferol fel y byddech yn unrhyw le arall.
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
Cynnwys moddol amrywiol
Oes gennych chi griw o fotymau sydd i gyd yn sbarduno'r un modd gyda chynnwys ychydig yn wahanol? Defnyddio event.relatedTargeta phriodoleddau HTMLdata-* ( trwy jQuery o bosibl ) i amrywio cynnwys y moddol yn dibynnu ar ba fotwm y cliciwyd arno.
<buttontype="button"class="btn btn-primary"data-toggle="modal"data-target="#exampleModal"data-whatever="@mdo">Open modal for @mdo</button><buttontype="button"class="btn btn-primary"data-toggle="modal"data-target="#exampleModal"data-whatever="@fat">Open modal for @fat</button><buttontype="button"class="btn btn-primary"data-toggle="modal"data-target="#exampleModal"data-whatever="@getbootstrap">Open modal for @getbootstrap</button><divclass="modal fade"id="exampleModal"tabindex="-1"role="dialog"aria-labelledby="exampleModalLabel"aria-hidden="true"><divclass="modal-dialog"role="document"><divclass="modal-content"><divclass="modal-header"><h5class="modal-title"id="exampleModalLabel">New message</h5><buttontype="button"class="close"data-dismiss="modal"aria-label="Close"><spanaria-hidden="true">×</span></button></div><divclass="modal-body"><form><divclass="form-group"><labelfor="recipient-name"class="col-form-label">Recipient:</label><inputtype="text"class="form-control"id="recipient-name"></div><divclass="form-group"><labelfor="message-text"class="col-form-label">Message:</label><textareaclass="form-control"id="message-text"></textarea></div></form></div><divclass="modal-footer"><buttontype="button"class="btn btn-secondary"data-dismiss="modal">Close</button><buttontype="button"class="btn btn-primary">Send message</button></div></div></div></div>
Dileu animeiddiad
Ar gyfer modiwlau sy'n ymddangos yn syml yn hytrach na diflannu i'r golwg, tynnwch y .fadedosbarth o'ch marc moddol.
Uchder deinamig
Os yw uchder modd newid tra ei fod ar agor, dylech ffonio $('#myModal').modal('handleUpdate')i ail-addasu safle'r modd rhag ofn y bydd bar sgrolio yn ymddangos.
Hygyrchedd
Byddwch yn siwr i ychwanegu role="dialog"a aria-labelledby="...", gan gyfeirio at y teitl moddol, i .modal, ac role="document"i'r .modal-dialogei hun. Yn ogystal, gallwch roi disgrifiad o'ch deialog moddol gydag aria-describedbyon .modal.
Mewnosod fideos YouTube
Mae gwreiddio fideos YouTube mewn moddau yn gofyn am JavaScript ychwanegol nid yn Bootstrap i atal chwarae a mwy yn awtomatig. Gweler y post defnyddiol Stack Overflow hwn am ragor o wybodaeth.
Meintiau dewisol
Mae gan foddau ddau faint dewisol, sydd ar gael trwy ddosbarthiadau addasu i'w gosod ar .modal-dialog. Mae'r meintiau hyn yn cychwyn ar rai torbwyntiau er mwyn osgoi bariau sgrolio llorweddol ar olygfannau culach.
Large modal
...
Small modal
...
Defnydd
Mae'r ategyn moddol yn toglo'ch cynnwys cudd yn ôl y galw, trwy briodoleddau data neu JavaScript. Mae hefyd yn ychwanegu .modal-openat yr <body>ymddygiad sgrolio rhagosodedig i ddiystyru ac yn cynhyrchu a .modal-backdropi ddarparu ardal glicio ar gyfer diystyru moddau a ddangosir wrth glicio y tu allan i'r moddol.
Trwy briodoleddau data
Ysgogi moddol heb ysgrifennu JavaScript. Gosod data-toggle="modal"ar elfen rheolydd, fel botwm, ynghyd â data-target="#foo"neu href="#foo"i dargedu moddol penodol i toglo.
Trwy JavaScript
Ffoniwch foddol gydag id myModalgydag un llinell o JavaScript:
Opsiynau
Gellir trosglwyddo opsiynau trwy briodoleddau data neu JavaScript. Ar gyfer priodoleddau data, atodwch enw'r opsiwn i data-, fel yn data-backdrop="".
Enw
Math
Diofyn
Disgrifiad
cefndir
boolean neu'r llinyn'static'
gwir
Yn cynnwys elfen foddol-cefndir. Fel arall, nodwch staticar gyfer cefndir nad yw'n cau'r modd wrth glicio.
bysellfwrdd
boolaidd
gwir
Yn cau'r modd pan fydd allwedd dianc yn cael ei wasgu
ffocws
boolaidd
gwir
Yn rhoi'r ffocws ar y modd pan gaiff ei gychwyn.
dangos
boolaidd
gwir
Yn dangos y moddol wrth gychwyn.
Dulliau
Dulliau a thrawsnewidiadau anghydamserol
Mae pob dull API yn asyncronaidd ac yn dechrau cyfnod pontio . Maen nhw'n dychwelyd at y galwr cyn gynted ag y bydd y cyfnod pontio wedi dechrau ond cyn iddo ddod i ben . Yn ogystal, bydd galwad dull ar gydran trawsnewid yn cael ei anwybyddu .
Yn actifadu'ch cynnwys fel moddol. Yn derbyn opsiwn dewisol object.
.modal('toggle')
Toglo moddol â llaw. Yn dychwelyd i'r galwr cyn i'r moddol gael ei ddangos neu ei guddioshown.bs.modal ( hy cyn i'r hidden.bs.modaldigwyddiad ddigwydd).
.modal('show')
Yn agor moddol â llaw. Yn dychwelyd i'r galwr cyn i'r moddol gael ei ddangos (hy cyn i'r shown.bs.modaldigwyddiad ddigwydd).
.modal('hide')
Yn cuddio moddol â llaw. Yn dychwelyd i'r galwr cyn i'r moddol gael ei guddio (hy cyn i'r hidden.bs.modaldigwyddiad ddigwydd).
.modal('handleUpdate')
Ail-addaswch safle'r moddol â llaw os yw uchder y modd yn newid tra ei fod ar agor (hy rhag ofn y bydd bar sgrolio yn ymddangos).
.modal('dispose')
Yn dinistrio moddol elfen.
Digwyddiadau
Mae dosbarth moddol Bootstrap yn datgelu rhai digwyddiadau ar gyfer cysylltu â swyddogaethau moddol. Mae pob digwyddiad moddol yn cael ei danio at y moddol ei hun (hy yn y <div class="modal">).
Math o Ddigwyddiad
Disgrifiad
moddol.bs
Mae'r digwyddiad hwn yn tanio ar unwaith pan showelwir y dull enghraifft. Os caiff ei achosi gan glic, mae'r elfen a gliciwyd ar gael fel relatedTargeteiddo'r digwyddiad.
dangos.bs.modal
Mae'r digwyddiad hwn yn cael ei danio pan fydd y moddol wedi'i wneud yn weladwy i'r defnyddiwr (bydd yn aros i'r trawsnewidiadau CSS gael eu cwblhau). Os caiff ei achosi gan glic, mae'r elfen a gliciwyd ar gael fel relatedTargeteiddo'r digwyddiad.
cuddio.bs.modal
Mae'r digwyddiad hwn yn cael ei danio ar unwaith pan fydd y hidedull enghraifft wedi'i alw.
cudd.bs.modal
Mae'r digwyddiad hwn yn cael ei danio pan fydd y moddol wedi gorffen cael ei guddio rhag y defnyddiwr (bydd yn aros i'r trawsnewidiadau CSS gael eu cwblhau).