Sourceድሮፕዳውንድስ
ዝርዝር መላግቦታትን ካልእን ንምርኣይ ብBotstrap ንቑልቁል ዝወርድ ፕላግ-ኢን ንምርኣይ ዓውደ-ጽሑፋዊ ምድብላቕ ምቕያር።
ንቑልቁል ዝወርድ ዝርዝር መላግቦታትን ካልእን ንምርኣይ ዝሕግዙ ተለዋወጥቲ ዝኾኑ፣ ዓውደ-ጽሑፋዊ ምድብላቕ እዮም። በቲ ዝተሓወሶ ቡትስትራፕ ንቑልቁል ዝወርድ ጃቫስክሪፕት ፕላግ-ኢን መስተጋብራዊ ይኾኑ። ብምጥዋቕ እምበር ብምንሳሕ ኣይኮኑን ዝቕየሩ፤ እዚ ኮነ ኢልካ ዝተገብረ ውሳነ ዲዛይን እዩ።
ድሮፕዳውንድ ኣብ ሳልሳይ ወገን ቤተ-መጻሕፍቲ ዝተሃንጸ ኮይኑ ፡ Popper.js ፡ ዳይናሚክ ኣቀማምጣን ቪውፖርት ምልላይን ይህብ። ቅድሚ ናይ Bootstrap ጃቫስክሪፕት popper.min.js ምእታውካ ኣረጋግጽ ወይ Popper.js ዝሓዘ bootstrap.bundle.min.js
/ ተጠቐም። bootstrap.bundle.js
Popper.js ዳይናሚክ ኣቀማምጣ ስለዘየድሊ ግን ኣብ navbars ንውድቀት ንምቕማጥ ኣይጥቀመሉን እዩ።
ጃቫስክሪፕትናutil.js
ካብ ምንጪ ትሃንጽ እንተኾንካ ፡ .
እቲ WAI ARIA ደረጃ ንሓደ ጭቡጥ role="menu"
ዊጀት ይገልጽ , እዚ ግን ንተግባራት ወይ ተግባራት ዝቐስቅሱ መተግበሪ ዝመስሉ ምልክታታት ፍሉይ እዩ። ናይ ARIA ምልክታታት ናይ ምልክት ዝርዝር ነገራት፣ ናይ ምልክት ሳጹን ዝርዝር ነገራት፣ ናይ ሬድዮ መጠወቒ ዝርዝር ነገራት፣ ናይ ሬድዮ መጠወቒ ጉጅለታትን ንኡሳን ምልክታታትን ጥራይ ክሕዙ ይኽእሉ።
ብኣንጻሩ ናይ ቡትስትራፕ ድሮፕዳውንድስ ሓፈሻዊን ንዝተፈላለየ ኩነታትን ማርካፕ ቅርጽታትን ዝምልከትን ክኾኑ ዝተዳለዉ እዮም። ንኣብነት ተወሳኺ እታዎታትን ቁጽጽር ቅጥዕን ዝሓዙ ንቑልቁል ዝወርዱ ነገራት ምፍጣር ይከኣል እዩ፣ ከም ናይ ምድላይ ዓውድታት ወይ ናይ መእተዊ ቅጥዕታት። በዚ ምኽንያት እዚ፡ ቡትስትራፕ ንሓቀኛታት ARIA ምልክታታት ዘድልዩ role
ዝኾነን ባህርያትን ኣይጽበን (ወይ ብኣውቶማቲክ ኣይውስኽን) ። ጸሓፍቲ ነዞም ዝያዳ ፍሉያት ባህርያት ባዕሎም ከካትትዎም ክግደዱ እዮም።aria-
ይኹን እምበር፡ ቡትስትራፕ ንመብዛሕትኦም መደበኛ ናይ ሰሌዳ ቁልፊ ምልክት ምትእስሳር ኣብ ውሽጢ ዝተሃንጸ ደገፍ ይውስኽ እዩ፡ ከም ናይ .dropdown-item
መመልከቲ መፍትሕታት ተጠቒምካ ብውልቀ ባእታታት ናይ ምዝዋርን ነቲ ዝርዝር ESCብመፍትሕ ምዕጻውን ዓቕሚ።
ናይቲ ንቑልቁል ዝወርድ ቶግለር (ናትካ መጠወቒ ወይ መላግቦ) ከምኡውን ነቲ ንቑልቁል ዝወርድ ዝርዝር ኣብ ውሽጢ .dropdown
፣ ወይ ካልእ ን ዝእውጅ ባእታ ጠቕልሎ position: relative;
። ድሮፕዳውንድ ካብ <a>
ወይ <button>
ባእታታት ክብገሱ ይኽእሉ እዮም ብዝበለጸ ምስ ክህልዉኻ ዝኽእሉ ድሌታት ክሰማምዑ።
ዝኾነ ንጽል .btn
ምስ ገለ ናይ ምልክት ለውጢ ናብ ንቑልቁል ዝወርድ ቶግል ክቕየር ይኽእል። <button>
ብኽልቲኡ ባእታታት ብኸመይ ክትሰርሖም ከም እትኽእል ኣብዚ ኣሎ ፤
ምስ <a>
ባእታታት ድማ፤
እቲ ዝበለጸ ክፋል እዚ ምስ ዝኾነ ናይ መጠወቒ ፍልልይ ክትገብር ትኽእል ኢኻ፣ ንስኻ እውን፤
ብተመሳሳሊ፡ ዳርጋ ከም ሓደ መጠወቒ ንቑልቁል ዝወርድ ምልክት ዘለዎም ዝተመቕሉ መጠወቒታት ንቑልቁል ፍጠር፣ ግን ከኣ ኣብ .dropdown-toggle-split
ዙርያ እቲ ንቑልቁል ዝወርድ ካሬት ግቡእ ርሕቀት ንምርካብ ብምውሳኽ።
ነዚ ተወሳኺ ክፍሊ ንጥቀመሉ padding
ኣብ ክልቲኡ ወገን ናይቲ ካሬት ዘሎ ኣግማድ ብ25% ንምንካይን ነቲ margin-left
ንስሩዕ መጠወቒ ምውራድ ዝተወሰኸ ንምእላይን። እቶም ተወሳኺ ለውጥታት ነቲ ካሬት ኣብቲ ዝተመቕለ መጠወቒ ማእከል ገይሩ ይገብርዎን ኣብ ጎኒ እቲ ቀንዲ መጠወቒ ዝያዳ ዝምጥን ዓቐን ዘለዎ ናይ ምውቃዕ ቦታ ይህቡን።
ንቑልቁል ዝወርድ መጠወቒታት ምስ ኩሉ ዓቐን ዘለዎም መጠወቒታት ይሰርሑ፣ ነባሪን ዝተመቕሉን ንቑልቁል ዝወርድ መጠወቒታት ሓዊስካ።
.dropup
ኣብ ልዕሊ ባእታታት ንዘለዉ ንቑልቁል ዝወርድ ምልክታታት ኣብቲ ወላዲ ባእታ ብምውሳኽ ኣበግስ።
.dropright
ኣብቲ ወላዲ ባእታ ብምውሳኽ ኣብ የማናይ ሸነኽ ናይቶም ባእታታት ዝርከቡ ንቑልቁል ዝወርድ ምልክታታት ኣበግስ ።
.dropleft
ኣብቲ ወላዲ ባእታ ብምውሳኽ ኣብ ጸጋማይ ሸነኽ ናይቶም ባእታታት ዝርከቡ ንቑልቁል ዝወርድ ምልክታታት ጀምር ።
ብታሪኽ ንቑልቁል ዝወርድ ትሕዝቶታት ዝርዝር መላግቦታት ክኾኑ ነይርዎም ፡ ግን ድሕሪ ሕጂ ኣብ v4 ከምኡ ኣይኮነን። <button>
ሕጂ ብኣማራጺ ኣብ ክንዲ <a>
s ጥራይ ኣብ ንቑልቁል ዝወርድ ባእታታት ክትጥቀም ትኽእል ኢኻ ።
ብተወሳኺ ብዘይ መስተጋብራዊ ንቑልቁል ዝወርድ ነገራት ብ .dropdown-item-text
. ብብሕታዊ CSS ወይ ጽሑፍ ዩቲሊቲታት ዝያዳ ቅዲ ክትገብሩ ናጻ ትኾኑ።
.active
ኣብቲ ንቑልቁል ዝወርድ ነገራት ከም ንጡፋት ቅዲ ንምግባር ወስኸሎም ።
.disabled
ኣብቲ ንቑልቁል ዝወርድ ነገራት ከም ዝተሰናኸሉ ቅዲ ንምግባር ወስኸሎም ።
ብነባሪ መልክዑ፡ ሓደ ንቑልቁል ዝወርድ ዝርዝር ብኣውቶማቲክ ካብ ላዕሊን ብጸጋማይ ሸነኽ ወላዲኡን 100% ይቕመጥ። .dropdown-menu-right
ናብ a ወስኹ ናብ .dropdown-menu
የማን ነቲ ንቑልቁል ዝወርድ ዝርዝር ኣሰላልፍዎ።
ርእሲ ንላዕሊ! ድሮፕዳውንድ ሳላ Popper.js (ብዘይካ ኣብ navbar ክሕዙ ከለዉ) ይቕመጡ።
ኣብ ዝኾነ ንቑልቁል ዝወርድ ዝርዝር ንክፋላት ተግባራት ስያመ ንምሃብ ርእሲ ምውሳኽ።
ንጉጅለታት ናይ ተዛመድቲ ናይ ምልክት ዝርዝር ነገራት ብመከፋፈልቲ ምፍላይ።
ዝኾነ ነጻ ቅርጺ ጽሑፍ ኣብ ውሽጢ ንቑልቁል ዝወርድ ዝርዝር ምስ ጽሑፍ ኣቐምጦ እሞ ናይ ርሕቀት መሳለጥያታት ተጠቐም ። ስፍሓት ናይቲ ዝርዝር ንምድራት ተወሳኺ ቅዲታት ዓቐን ከድልየካ ምዃኑ ኣስተውዕል።
ንሓደ ቅጥዒ ኣብ ውሽጢ ንቑልቁል ዝወርድ ዝርዝር ኣቐምጦ፣ ወይ ናብ ንቑልቁል ዝወርድ ዝርዝር ግበሮ፣ ከምኡውን ማርጅን ወይ ፓዲንግ ዩቲሊቲታት ተጠቐም እሞ እቲ እትደልዮ ኣሉታዊ ቦታ ሃቦ።
ነቲ ንቑልቁል ዝወርድ ቦታ ንምቕያር data-offset
ወይ ተጠቐም ።data-reference
.show
ብመንገዲ ባህርያት ዳታ ወይ ጃቫስክሪፕት፡ እቲ ንቑልቁል ዝወርድ ተወሰኽቲ፡ ነቲ ክፍሊ ኣብቲ ወላዲ ዝርዝር ኣቕሓ ብምቕያር፡ ንዝተሓብአ ትሕዝቶ (ንቑልቁል ዝወርድ ዝርዝር) ይቕይሮ ። እቲ data-toggle="dropdown"
ባህሪ ብደረጃ መተግበሪ ንዝርከቡ ንቑልቁል ዝወርድ ምልክታታት ንምዕጻው ዝጽጋዕ እዩ፣ ስለዚ ኩሉ ግዜ ክትጥቀመሉ ጽቡቕ ሓሳብ እዩ።
ኣብ ምትንኻፍ ዝኽእል መሳርሒታት፡ ንቑልቁል ዝወርድ ምኽፋት ባዶ ( $.noop
) mouseover
መትሓዚታት ናብቶም ናይ ቀረባ ቆልዑ ናይቲ <body>
ባእታ ይውስኽ። This admittedly ugly hack is necessary to work around a quirk in iOS' event delegation , እዚ እንተዘይኮይኑ ካብቲ ንቑልቁል ዝወርድ ወጻኢ ኣብ ዝኾነ ቦታ ምጥዋይ ነቲ ንቑልቁል ዝወርድ ኮድ ካብ ምብጋስ ክኽልክል ምኸኣለ። እቲ ንቑልቁል ዝወርድ ምስ ተዓጽወ፡ እዞም ተወሳኺ ባዶ mouseover
ዝኾኑ መትሓዚታት ይእለዩ።
data-toggle="dropdown"
ንሓደ ንቑልቁል ዝወርድ ንቑልቁል ንምቕያር ናብ ሓደ ሊንክ ወይ መጠወቒ ወስኹ ።
ብመንገዲ ጃቫስክሪፕት ናብቶም ንቑልቁል ዝወርድ ደውሉ፤
data-toggle="dropdown"
ሕጂ’ውን ኣድላዪ እዩ።
ንቑልቁል ዝወርድካ ብመንገዲ ጃቫስክሪፕት ትድውለሉ ወይ ኣብ ክንድኡ ነቲ data-api ትጥቀም ብዘየገድስ data-toggle="dropdown"
፡ ኩሉ ግዜ ኣብቲ ንቑልቁል ዝወርድ መበገሲ ባእታ ህልው ክህሉ ይግደድ።
ኣማራጺታት ብመንገዲ ዳታ ባህርያት ወይ ጃቫስክሪፕት ክሓልፉ ይኽእሉ። ንባህርያት ዳታ፡ ስም ኣማራጺ ናብ ምውሳኽ data-
፡ ከምቲ ኣብ data-offset=""
.
ሽም |
ዓይነት |
ትሑዝ |
መግለፂ |
ኦፍሴት ዝበሃል ምዃኑ’ዩ። |
ቁጽሪ | ሕብረ ቃላት | ተግባር |
0. |
ምትዕርራይ ናይቲ ምውራድ ብተዛማዲ ምስቲ ዕላማኡ። ንዝያዳ ሓበሬታ ኣብ Popper.js's offset docs ተወከሱ ። |
መንገብገብ |
ቡልያን ዝብል እዩ። |
ሓቂ |
ኣብቲ መወከሲ ባእታ ምድብላቕ እንተጋጢሙ ድሮፕዳውን ክግልበጥ ፍቐደሉ። ንዝያዳ ሓበሬታ ኣብ Popper.js's flip docs ተወከሱ ። |
ዶብ ምዃኑ’ዩ። |
ሕብረ ቃላት | ባእታ |
'ስክሮልወላዲ'። |
ናይ ምፍሳስ ደረት ዶብ ናይቲ ንቑልቁል ዝወርድ ዝርዝር። 'viewport' ናይ , 'window' , 'scrollParent' , ወይ ናይ HTMLElement መወከሲ ክብርታት ይቕበል (ጃቫስክሪፕት ጥራይ)። ንዝያዳ ሓበሬታ ኣብ Popper.js's preventOverflow docs ተወከሱ ። |
መጣቀሲ |
ሕብረ ቃላት | ባእታ |
'ምቕያር'። |
መወከሲ ባእታ ናይቲ ንቑልቁል ዝወርድ ዝርዝር። 'toggle' ናይ , 'parent' , ወይ ናይ HTMLElement መወከሲ ክብርታት ይቕበል። ንዝያዳ ሓበሬታ ኣብ Popper.js's referenceObject docs ተወከሱ ። |
ኣጫውት |
ገመድ |
'ዳይናሚክ'። |
ብነባሪ ንዳይናሚክ ኣቀማምጣ Popper.js ንጥቀም። ነዚ ብ static . |
ኣስተውዕል boundary
ካብ , ናብ ዝኾነ ዋጋ ክቕመጥ ከሎ 'scrollParent'
፣ እቲ ቅዲ ኣብቲ መትሓዚ position: static
ይትግበር ።.dropdown
ሜላ |
መግለፂ |
$().dropdown('toggle') |
ናይ ሓደ ዝተዋህበ ናቭባር ወይ ትቦ ዘለዎ ምድህሳስ ንቑልቁል ዝወርድ ዝርዝር ይቕይሮ። |
$().dropdown('update') |
ናይ ሓደ ባእታ ንቑልቁል ዝወርድ ቦታ ኣቀማምጣ የዘምን። |
$().dropdown('dispose') |
ናይ ሓደ ባእታ ንቑልቁል ዝወርድ የጥፍኦ። |
ኩሎም ንቑልቁል ዝወርድ ፍጻመታት ኣብቲ .dropdown-menu
's ወላዲ ባእታ ይትኮሱን ንብረት ኣለዎምን relatedTarget
፣ ዋጋኡ ድማ እቲ ዝቕይር መልህቕ ባእታ እዩ። hide.bs.dropdown
ከምኡውን hidden.bs.dropdown
ፍጻመታት ንፍጻመ ጠውቂ ዝኸውን Event Object ዝሓዘ clickEvent
ንብረት ኣለዎም (እቲ መበቆላዊ ዓይነት ፍጻመ ) ምስ ዝኸውን ጥራይ ።click
ዝግጅት |
መግለፂ |
show.bs.dropdown |
እዚ ፍጻመ እዚ show instance ሜላ ምስ ዝጽዋዕ ብቕጽበት ይትኩስ። |
shown.bs.dropdown |
እዚ ክስተት ዝትኮስ እቲ ንቑልቁል ዝወርድ ንተጠቃሚ ርኡይ ምስ ዝኸውን እዩ (ክሳብ CSS ምስግጋራት ክጽበ እዩ፣ ክሳብ ዝዛዘም)። |
hide.bs.dropdown |
እዚ ፍጻመ እዚ እቲ hide instance method ምስ ተጸውዐ ብቕጽበት ይትኮስ። |
hidden.bs.dropdown |
እዚ ፍጻመ እዚ እቲ ንቑልቁል ዝወርድ ካብ ተጠቃሚ ምሕባእ ምስ ወድአ እዩ ዝትኮስ (ንCSS ምስግጋራት ክጽበ እዩ፣ ክሳብ ዝዛዘም)። |