SourceУнтраах цэсүүд
Bootstrap унадаг залгаасыг ашиглан холбоосын жагсаалт болон бусад зүйлийг харуулах контекст давхаргыг сэлгэх.
Унтраах цэсүүд нь сэлгэх боломжтой, холбоосын жагсаалт болон бусад зүйлсийг харуулах контекст давхаргууд юм. Тэдгээрийг оруулсан Bootstrap унадаг JavaScript залгаастай интерактив болгосон. Тэдгээрийг зөөвөрлөх замаар биш харин товших замаар сэлгэх боломжтой; Энэ бол санаатай дизайны шийдвэр юм.
Унтраах файлуудыг гуравдагч талын Popper.js номын сан дээр бүтээдэг бөгөөд энэ нь динамик байрлал тогтоох болон харагдах хэсгийг илрүүлэх боломжийг олгодог. Bootstrap-ийн JavaScript-н өмнө popper.min.js оруулах эсвэл Popper.js-г агуулсан bootstrap.bundle.min.js
/ ашиглахаа мартуузай. bootstrap.bundle.js
Popper.js нь динамик байрлал тогтоох шаардлагагүй тул унадаг цэсийг navbar дээр байрлуулахад ашигладаггүй.
Хэрэв та манай JavaScript-г эх сурвалжаас бүтээж байгаа бол энэ ньutil.js
.
WAI ARIA стандарт нь бодит виджетийг role="menu"
тодорхойлдог боловч энэ нь үйлдэл эсвэл функцийг идэвхжүүлдэг програмтай төстэй цэсүүдэд зориулагдсан юм. ARIA цэс нь зөвхөн цэсийн зүйл, шалгах хайрцагны цэсийн зүйл, радио товчлуурын цэсийн зүйл, радио товчлуурын бүлгүүд болон дэд цэсүүдийг агуулж болно.
Нөгөө талаас Bootstrap-ийн уналт нь ерөнхий байхаар бүтээгдсэн бөгөөд янз бүрийн нөхцөл байдал, тэмдэглэгээний бүтцэд хэрэглэгдэх боломжтой. Жишээлбэл, хайлтын талбар эсвэл нэвтрэх маягт гэх мэт нэмэлт оруулга, маягтын удирдлагыг агуулсан унадаг цэсийг үүсгэх боломжтой. Ийм учраас Bootstrap нь жинхэнэ ARIA цэсэнд шаардлагатай шинж чанаруудын аль нэгийг нь хүлээхгүй ( role
мөн автоматаар нэмдэггүй). Зохиогчид эдгээр илүү тодорхой шинж чанаруудыг өөрсдөө оруулах ёстой.aria-
.dropdown-item
Гэсэн хэдий ч Bootstrap нь курсорын товчлууруудыг ашиглан бие даасан элементүүдээр шилжих, цэсийг товчлуураар хаах зэрэг гарны цэсийн ихэнх стандарт харилцан үйлчлэлд суурилуулсан дэмжлэгийг нэмдэг ESC.
Унждаг цонхны унтраалга (таны товчлуур эсвэл холбоос) болон унадаг цэсийг дотор нь .dropdown
, эсвэл зарладаг өөр элементийг боож өгнө үү position: relative;
. Таны боломжит хэрэгцээнд илүү нийцүүлэхийн тулд унадаг цэсийг <a>
эсвэл элементүүдээс өдөөж болно .<button>
Аливаа .btn
синглыг зарим тэмдэглэгээний өөрчлөлтөөр унждаг унтраалга болгон хувиргаж болно. <button>
Та тэдгээрийг аль ч элементтэй хэрхэн ажиллуулахыг эндээс үзнэ үү :
Мөн <a>
элементүүдтэй:
Хамгийн сайн тал нь та үүнийг дурын товчлуурын хувилбараар хийж болно.
Үүний нэгэн адил, нэг товчлуурын унждаг цэстэй бараг ижил тэмдэглэгээтэй, гэхдээ .dropdown-toggle-split
унждаг каретны эргэн тойронд тохирох зайг нэмж, хуваах товчлуурыг үүсгэ.
Бид энэ нэмэлт ангиллыг padding
каретны хоёр талын хэвтээ хэсгийг 25%-иар багасгаж, margin-left
ердийн товчлуурын уналтанд нэмсэн хэсгийг арилгахад ашигладаг. Эдгээр нэмэлт өөрчлөлтүүд нь хуваах товчлуурын голд байрлах тэмдэглэгээг байлгаж, үндсэн товчлуурын хажууд илүү тохирох хэмжээтэй цохих хэсгийг бий болгоно.
Товчлуурын уналт нь үндсэн болон хуваах унадаг товчлуур зэрэг бүх хэмжээтэй товчлууруудтай ажилладаг.
Үндсэн элемент дээр нэмэх замаар элементүүдийн дээрх унждаг цэсийг өдөөх .dropup
.
Үндсэн элемент дээр нэмэх замаар элементүүдийн баруун талд байрлах унждаг цэсийг .dropright
идэвхжүүлнэ үү.
Үндсэн элемент дээр нэмэх замаар элементүүдийн зүүн талд байрлах унждаг цэсийг .dropleft
идэвхжүүлнэ үү.
Түүхэн унадаг цэсийн агуулга нь холбоос байх ёстой байсан ч v4-д тийм биш болсон. Одоо та зүгээр л s <button>
-ийн оронд унадаг цэсэнд элементүүдийг ашиглаж болно .<a>
Та мөн интерактив бус унждаг зүйлсийг ашиглан үүсгэж болно .dropdown-item-text
. Захиалгат CSS эсвэл текст хэрэглүүрүүдийг ашиглан загвараа үргэлжлүүлээрэй.
.active
Унтраах жагсаалтад байгаа зүйлсийг идэвхтэй болгож хэв маягт нэмнэ үү .
.disabled
Унтраах жагсаалтад байгаа зүйлсэд нэмээд тэдгээрийг идэвхгүй болгож хэвлэ .
Өгөгдмөл байдлаар, унждаг цэс нь эцэг эхийнхээ дээд ба зүүн талд автоматаар 100% байрладаг. Унждаг .dropdown-menu-right
цэсийг .dropdown-menu
баруун тийш зэрэгцүүлэх.
Анхаар! Унтраах цэсүүд нь Popper.js-ийн ачаар байрладаг (тэдгээр нь навигацийн самбарт агуулагдахаас бусад тохиолдолд).
Дурын унждаг цэсэнд үйлдлүүдийн хэсгийг шошголохын тулд толгой хэсгийг нэмнэ үү.
Холбогдох цэсний бүлгүүдийг хуваагчаар тусгаарла.
Чөлөөт хэлбэрийн дурын текстийг бичвэрийн хамт унадаг цэсэнд байрлуулж, зай завсарлах хэрэгслийг ашиглана уу . Цэсийн өргөнийг хязгаарлахын тулд танд нэмэлт хэмжээсийн загвар хэрэгтэй болно гэдгийг анхаарна уу.
Унждаг цэсэнд маягт байрлуулж эсвэл доош унадаг цэс болгож, шаардлагатай сөрөг зайг өгөхийн тулд маржин эсвэл дүүргэх хэрэгслийг ашиглана уу.
Унждаг жагсаалтын байршлыг өөрчлөхийн тулд data-offset
эсвэл ашиглана уу.data-reference
.show
Өгөгдлийн шинж чанарууд эсвэл JavaScript-ээр дамжуулан унадаг залгаас нь эх жагсаалтын зүйл дээрх ангийг сэлгэх замаар далд контентыг (унадаг цэс) сэлгэдэг . Атрибут data-toggle="dropdown"
нь програмын түвшинд унждаг цэсийг хаахад тулгуурладаг тул үүнийг үргэлж ашиглах нь зүйтэй.
Мэдрэгчтэй төхөөрөмжүүд дээр унадаг цэсийг нээх нь элементийн шууд хүүхдүүд рүү хоосон ( $.noop
) зохицуулагчийг нэмнэ. Энэхүү муухай хакерт нь iOS-ийн арга хэмжээний төлөөлөгчдийн доторх хачирхалтай байдлыг арилгахад зайлшгүй шаардлагатай бөгөөд энэ нь унадаг цэснээс гадна хаана ч товших нь унадаг цэсийг хаадаг кодыг өдөөхөөс сэргийлнэ. Унтраах цонхыг хаасны дараа эдгээр нэмэлт хоосон зохицуулагчийг устгана.mouseover
<body>
mouseover
Өгөгдлийн шинж чанаруудаар дамжуулан
data-toggle="dropdown"
Унждаг цэсийг сэлгэхийн тулд холбоос эсвэл товчлуур дээр нэмнэ үү .
JavaScript-ээр унадаг цэс рүү залгана уу:
data-toggle="dropdown"
шаардлагатай хэвээр байна
Та JavaScript-ээр унадаг цэс рүү залгах эсвэл оронд нь data-api ашиглах эсэхээс үл хамааран унадаг цэсний data-toggle="dropdown"
гох элемент дээр байнга байх шаардлагатай.
Сонголтуудыг өгөгдлийн шинж чанарууд эсвэл JavaScript-ээр дамжуулж болно. Өгөгдлийн шинж чанаруудын хувьд сонголтын нэрийг -д data-
хавсаргана data-offset=""
.
Нэр |
Төрөл |
Өгөгдмөл |
Тодорхойлолт |
офсет |
тоо | мөр | функц |
0 |
Зорилтоттой харьцуулахад унждаг цэсийн офсет. Дэлгэрэнгүй мэдээллийг Popper.js-ийн офсет баримтаас үзнэ үү . |
эргүүлэх |
логик |
үнэн |
Лавлагаа элемент дээр давхцсан тохиолдолд Dropdown-ыг эргүүлэхийг зөвшөөрнө үү. Дэлгэрэнгүй мэдээллийг Popper.js-ийн flip docs -оос үзнэ үү . |
хил хязгаар |
мөр | элемент |
'scrollParent' |
Унждаг цэсний халих хязгаарлалтын хил хязгаар. 'viewport' , 'window' , 'scrollParent' , эсвэл HTMLElement лавлагааны утгуудыг (зөвхөн JavaScript) хүлээн авна. Дэлгэрэнгүй мэдээллийг Popper.js-ийн preventOverflow баримтаас үзнэ үү . |
лавлагаа |
мөр | элемент |
"шилжүүлэх" |
Унждаг цэсний лавлах элемент. 'toggle' , 'parent' , эсвэл HTMLElement лавлагааны утгыг хүлээн авна. Дэлгэрэнгүй мэдээллийг Popper.js-ийн лавлахObject баримтаас үзнэ үү . |
харуулах |
мөр |
"динамик" |
Анхдагч байдлаар бид динамик байрлал тогтооход Popper.js ашигладаг. Үүнийг ашиглан идэвхгүй болгох static . |
boundary
-аас өөр ямар ч утгыг тохируулах үед 'scrollParent'
уг загвар position: static
нь .dropdown
саванд хэрэглэгдэхийг анхаарна уу.
Арга |
Тодорхойлолт |
$().dropdown('toggle') |
Өгөгдсөн навигацийн самбар эсвэл цонхтой навигацийн унждаг цэсийг сэлгэх. |
$().dropdown('update') |
Элементийн унадаг цэсийн байрлалыг шинэчилнэ. |
$().dropdown('dispose') |
Элементийн унадаг цэсийг устгадаг. |
Унтраах бүх үйл явдлууд нь .dropdown-menu
үндсэн элемент дээр ажилладаг relatedTarget
бөгөөд үнэ цэнэ нь залгах зангуу элемент болох өмчтэй байна. hide.bs.dropdown
болон hidden.bs.dropdown
үйл явдлууд нь товшилтын үйл явдлын үйл явдлын объектыг агуулсан clickEvent
өмчтэй (зөвхөн анхны үйл явдлын төрөл нь ).click
Үйл явдал |
Тодорхойлолт |
show.bs.dropdown |
Show instance аргыг дуудах үед энэ үйл явдал шууд идэвхждэг. |
shown.bs.dropdown |
Унтраах цэсийг хэрэглэгчдэд харагдуулах үед энэ үйл явдал идэвхждэг (CSS шилжилтийг дуусгахыг хүлээх болно). |
hide.bs.dropdown |
Нуух жишээний аргыг дуудсан үед энэ үйл явдал шууд идэвхжд��г. |
hidden.bs.dropdown |
Унтраах цэсийг хэрэглэгчээс нууж дууссаны дараа энэ үйл явдал идэвхждэг (CSS шилжилтийг дуусгахыг хүлээх болно). |