Օգտագործեք Bootstrap-ի JavaScript մոդալ պլագինը` ձեր կայքում լուսարկղերի, օգտատերերի ծանուցումների կամ ամբողջովին հատուկ բովանդակության համար երկխոսություններ ավելացնելու համար:
Ինչպես է դա աշխատում
Նախքան Bootstrap-ի մոդալ բաղադրիչը սկսելը, համոզվեք, որ կարդացեք հետևյալը, քանի որ մեր մենյուի ընտրանքները վերջերս փոխվել են:
Մոդալները կառուցված են HTML, CSS և JavaScript-ով: Դրանք տեղադրվում են փաստաթղթի մնացած ամեն ինչի վրա և հեռացնում են ոլորումը, <body>որպեսզի փոխարենը ոլորվի մոդալ բովանդակությունը:
Սեղմելով մոդալ «հետին պլանի» վրա, մոդալն ավտոմատ կերպով կփակի:
Bootstrap-ը միաժամանակ աջակցում է միայն մեկ մոդալ պատուհան: Ներդրված մոդալները չեն աջակցվում, քանի որ մենք կարծում ենք, որ դրանք վատ օգտվողների փորձառություններ են:
Մոդալները օգտագործում են position: fixed, որը երբեմն կարող է մի փոքր առանձնահատուկ լինել դրա մատուցման վերաբերյալ: Հնարավորության դեպքում ձեր մոդալ HTML-ը տեղադրեք վերին մակարդակի վրա՝ այլ տարրերի հնարավոր միջամտությունից խուսափելու համար: Դուք, ամենայն հավանականությամբ, խնդիրներ կունենաք .modalմեկ այլ ֆիքսված տարրի մեջ տեղադրելու ժամանակ:
Քանի որ HTML5-ը սահմանում է իր իմաստաբանությունը, HTML autofocusհատկանիշը որևէ ազդեցություն չունի Bootstrap մոդալներում: Նույն էֆեկտին հասնելու համար օգտագործեք որոշ հատուկ JavaScript.
Շարունակեք կարդալ ցուցադրությունների և օգտագործման ուղեցույցների համար:
Օրինակներ
Մոդալ բաղադրիչներ
Ստորև բերված է ստատիկ մոդալ օրինակ (նշանակում է position, displayոր այն վերացվել է): Ներառված են մոդալ վերնագիր, մոդալ տեքստ (պահանջվում է padding) և մոդալ ստորագիր (ըստ ցանկության): Մենք խնդրում ենք, որ հնարավորության դեպքում ներառեք մոդալ վերնագրեր՝ մերժման գործողություններով, կամ տրամադրեք այլ բացահայտ մերժման գործողություն:
Մոդալ վերնագիր
Մոդալ հիմնական տեքստն այստեղ է:
Կենդանի ցուցադրություն
Միացնել աշխատանքային մոդալ ցուցադրումը` սեղմելով ստորև նշված կոճակը: Այն կսահի ներքև և կխամրի էջի վերևից:
Մոդալ վերնագիր
Woohoo, դուք կարդում եք այս տեքստը մոդալով:
Ստատիկ ֆոն
Երբ հետնաշերտը դրված է ստատիկի վրա, մոդալը չի փակվի դրանից դուրս սեղմելիս: Սեղմեք ստորև բերված կոճակը՝ այն փորձելու համար:
Մոդալ վերնագիր
Ես չեմ փակի, եթե սեղմեք ինձնից դուրս: Նույնիսկ մի փորձեք սեղմել escape ստեղնը:
Երկար բովանդակության ոլորում
Երբ մոդալները չափազանց երկար են դառնում օգտատիրոջ տեսադաշտի կամ սարքի համար, դրանք պտտվում են էջից անկախ: Փորձեք ստորև ներկայացված ցուցադրությունը՝ տեսնելու, թե ինչ նկատի ունենք:
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.
Կարող եք նաև ստեղծել ոլորվող մոդալ, որը թույլ է տալիս ոլորել մոդալ մարմինը՝ .modal-dialog-scrollableավելացնելով .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.
Ուղղահայաց կենտրոնացված
Ավելացրեք .modal-dialog-centeredմոդալը .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.
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.
Tooltips և popovers
Անհրաժեշտության դեպքում գործիքների հուշումներն ու փոփովերը կարող են տեղադրվել մոդալների մեջ: Երբ մոդալները փակ են, ցանկացած գործիքի հուշում և ներդիրում ավտոմատ կերպով անջատվում են:
Օգտագործեք Bootstrap ցանցային համակարգը մոդալի .container-fluidներսում՝ բույն դնելով .modal-body. Այնուհետև օգտագործեք սովորական ցանցային համակարգի դասերը, ինչպես ցանկացած այլ վայրում:
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
Տարբեր մոդալ բովանդակություն
Ունե՞ք մի քանի կոճակներ, որոնք բոլորն էլ գործարկում են նույն մոդալը՝ մի փոքր տարբեր բովանդակությամբ: Օգտագործեք event.relatedTargetև HTML data-*ատրիբուտներ (հնարավոր է jQuery-ի միջոցով )՝ մոդալի բովանդակությունը փոխելու համար՝ կախված նրանից, թե որ կոճակն է սեղմված:
Ստորև ներկայացված է կենդանի ցուցադրություն, որին հաջորդում են HTML և JavaScript օրինակները: Լրացուցիչ տեղեկությունների համար կարդացեք մոդալ իրադարձությունների փաստաթղթերը մանրամասների համար relatedTarget:
New message
Փոխել անիմացիան
Փոփոխականը $modal-fade-transformորոշում է փոխակերպման վիճակը .modal-dialogմինչև մոդալ fade-in անիմացիան, $modal-show-transformփոփոխականը որոշում է փոխակերպումը .modal-dialogմոդալ fade-in անիմացիայի վերջում:
Եթե ցանկանում եք, օրինակ, մեծացնելու անիմացիա, կարող եք սահմանել $modal-fade-transform: scale(.8):
Հեռացնել անիմացիան
Մոդալների համար, որոնք պարզապես հայտնվում են, այլ ոչ թե խամրում, հեռացրեք .fadeդասը ձեր մոդալ նշումից:
Դինամիկ բարձրություններ
Եթե մոդալի բարձրությունը փոխվում է, երբ այն բաց է, դուք պետք է զանգահարեք $('#myModal').modal('handleUpdate')՝ նորից կարգավորելու մոդալի դիրքը, եթե ոլորման տող հայտնվի:
Մատչելիություն
Համոզվեք, որ ավելացրեք role="dialog"և aria-labelledby="...", հղում կատարելով մոդալ վերնագրին, դեպի և .modalինքնին : Բացի այդ, դուք կարող եք տալ ձեր մոդալ երկխոսության նկարագրությունը on-ի հետ :role="document".modal-dialogaria-describedby.modal
Մոդալներն ունեն երեք ընտրովի չափեր, որոնք հասանելի են մոդիֆիկատորների դասերի միջոցով՝ տեղադրելու համար .modal-dialog. Այս չափերը հայտնվում են որոշակի ընդմիջման կետերում, որպեսզի խուսափեն ավելի նեղ տեսադաշտերի հորիզոնական ոլորման տողերից:
Չափը
Դասարան
Մոդալ առավելագույն լայնություն
Փոքր
.modal-sm
300px
Կանխադրված
Ոչ ոք
500px
Մեծ
.modal-lg
800px
Լրացուցիչ մեծ
.modal-xl
1140px
Մեր լռելյայն մոդալն առանց փոփոխիչի դասի կազմում է «միջին» չափի մոդալը:
Extra large modal
...
Large modal
...
Small modal
...
Օգտագործումը
Մոդալ հավելվածը փոխում է ձեր թաքնված բովանդակությունը ըստ պահանջի՝ տվյալների ատրիբուտների կամ JavaScript-ի միջոցով: Այն նաև ավելացնում .modal-openէ <body>լռելյայն ոլորման վարքագիծը վերացնելու համար և առաջացնում է .modal-backdropսեղմման տարածք՝ մոդալից դուրս սեղմելիս ցուցադրված մոդալները հեռացնելու համար:
Տվյալների ատրիբուտների միջոցով
Ակտիվացրեք մոդալ առանց JavaScript գրելու: Սահմանել data-toggle="modal"կարգավորիչի տարրը, ինչպես կոճակը, a-ի հետ մեկտեղ data-target="#foo"կամ href="#foo"թիրախավորել որոշակի մոդալ՝ փոխարկելու համար:
JavaScript-ի միջոցով
Զանգահարեք մոդալ id- myModalով JavaScript-ի մեկ տողով.
Ընտրանքներ
Ընտրանքները կարող են փոխանցվել տվյալների ատրիբուտների կամ JavaScript-ի միջոցով: Տվյալների ատրիբուտների համար ավելացրեք տարբերակի անունը data-, ինչպես data-backdrop="".
Անուն
Տիպ
Կանխադրված
Նկարագրություն
ֆոն
բուլյան կամ լարային'static'
ճիշտ
Ներառում է մոդալ-ֆոնային տարր: Որպես այլընտրանք, նշեք staticֆոն, որը չի փակում մոդալը սեղմելու կամ փախուստի ստեղնը սեղմելու դեպքում:
ստեղնաշար
բուլյան
ճիշտ
Փակում է մոդալը, երբ սեղմված է escape ստեղնը
կենտրոնանալ
բուլյան
ճիշտ
Նախաստորագրվելիս կենտրոնանում է մոդալի վրա:
ցուցադրում
բուլյան
ճիշտ
Ցույց է տալիս մոդալը, երբ սկզբնավորվում է:
Մեթոդներ
Ասինխրոն մեթոդներ և անցումներ
Բոլոր API մեթոդները ասինխրոն են և սկսում են անցում : Նրանք վերադառնում են զանգահարողին հենց որ անցումը սկսվի, բայց մինչև այն ավարտվի : Բացի այդ, անցումային բաղադրիչի վրա մեթոդի կանչը անտեսվելու է :
Ակտիվացնում է ձեր բովանդակությունը որպես մոդալ: Ընդունում է ընտրովի տարբերակներ object:
.modal('toggle')
Ձեռքով փոխում է մոդալը: Վերադառնում է զանգահարողին մինչև մոդալն իրականում ցուցադրվել կամ թաքցվել է (այսինքն՝ նախքան իրադարձությունը shown.bs.modalկամ hidden.bs.modalիրադարձությունը տեղի ունենալը):
.modal('show')
Ձեռքով բացում է մոդալ: Վերադառնում է զանգահարողին մինչև մոդալը փաստացի ցուցադրվելը (այսինքն՝ նախքան shown.bs.modalիրադարձությունը տեղի ունենալը):
.modal('hide')
Ձեռքով թաքցնում է մոդալը: Վերադառնում է զանգահարողին նախքան մոդալն իրականում թաքցվել է (այսինքն՝ նախքան hidden.bs.modalիրադարձությունը տեղի ունենալը):
.modal('handleUpdate')
Ձեռքով կարգավորեք մոդալի դիրքը, եթե մոդալի բարձրությունը փոխվում է բաց լինելու ժամանակ (այսինքն՝ ոլորման տող հայտնվելու դեպքում):
.modal('dispose')
Ոչնչացնում է տարրի մոդալը:
Իրադարձություններ
Bootstrap-ի մոդալ դասը բացահայտում է մի քանի իրադարձություն՝ մոդալ ֆունկցիոնալությանը միանալու համար: Բոլոր մոդալ իրադարձությունները կրակվում են հենց մոդալի վրա (այսինքն ՝ <div class="modal">).
Միջոցառման տեսակը
Նկարագրություն
շոու.բս.մոդալ
Այս իրադարձությունը գործարկվում է անմիջապես, երբ showկանչվում է օրինակի մեթոդը: Եթե կտտոցով է պայմանավորված, սեղմված տարրը հասանելի է որպես relatedTargetիրադարձության հատկություն:
ցուցադրված.բս.մոդալ
Այս իրադարձությունը գործարկվում է, երբ մոդալը տեսանելի է դառնում օգտատիրոջը (կսպասի CSS անցումների ավարտին): Եթե կտտոցով է պայմանավորված, սեղմված տարրը հասանելի է որպես relatedTargetիրադարձության հատկություն:
hide.bs.modal
Այս իրադարձությունը գործարկվում է անմիջապես, երբ hideկանչվում է օրինակի մեթոդը:
թաքնված.բս.մոդալ
Այս իրադարձությունը գործարկվում է, երբ մոդալն ավարտում է օգտագործողից թաքցված լինելը (կսպասի CSS անցումների ավարտին):
hidePrevented.bs.modal
Այս իրադարձությունը գործարկվում է, երբ մոդալը ցուցադրվում է, դրա հետնապատկերը գտնվում է, staticև մոդալից դուրս սեղմում կամ escape ստեղնը սեղմում է կատարվում: