ප්‍රධාන අන්තර්ගතය වෙත යන්න ලේඛන සංචාලනය වෙත යන්න
in English

Offcanvas

පන්ති කිහිපයක් සහ අපගේ ජාවාස්ක්‍රිප්ට් ප්ලගිනය සමඟින් සංචාලනය, සාප්පු කරත්ත සහ තවත් දේ සඳහා ඔබේ ව්‍යාපෘතියට සැඟවුණු පැති තීරු ගොඩනඟන්න.

එය ක්රියා කරන ආකාරය

Offcanvas යනු දර්ශන තොටේ වම්, දකුණ හෝ පහළ කෙළවරේ සිට දිස් වීමට JavaScript හරහා ටොගල් කළ හැකි පැති තීරු සංරචකයකි. බොත්තම් හෝ නැංගුරම් ඔබ ටොගල් කරන විශේෂිත මූලද්‍රව්‍යවලට අමුණා ඇති ප්‍රේරක ලෙස dataභාවිතා කරන අතර අපගේ ජාවාස්ක්‍රිප්ට් ආයාචනා කිරීමට උපලක්ෂණ භාවිතා කරයි.

  • Offcanvas එකම JavaScript කේතයන් සමහරක් මාදිලි ලෙස බෙදා ගනී. සංකල්පමය වශයෙන්, ඒවා බෙහෙවින් සමාන ය, නමුත් ඒවා වෙනම ප්ලගීන වේ.
  • ඒ හා සමානව, offcanvas හි මෝස්තර සහ මානයන් සඳහා වන සමහර මූලාශ්‍ර Sass විචල්‍ය මාදිලියේ විචල්‍යයන්ගෙන් උරුම වේ.
  • පෙන්වන විට, offcanvas හි පෙරනිමි පසුබිමක් ඇතුළත් වන අතර එය offcanvas සැඟවීමට ක්ලික් කළ හැක.
  • මාදිලිවලට සමානව, වරකට පෙන්විය හැක්කේ එක offcanvas එකක් පමණි.

දැනුම්දීම! CSS සජීවිකරණ හසුරුවන ආකාරය අනුව, ඔබට මූලද්‍රව්‍යයක් භාවිතා කිරීමට marginහෝ භාවිතා කිරීමට නොහැක. ඒ වෙනුවට, ස්වාධීන දවටන අංගයක් ලෙස පන්තිය භාවිතා කරන්න.translate.offcanvas

මෙම සංරචකයේ සජීවිකරණ බලපෑම prefers-reduced-motionමාධ්‍ය විමසුම මත රඳා පවතී. අපගේ ප්‍රවේශ්‍යතා ලේඛනවල අඩු කළ චලන කොටස බලන්න .

උදාහරණ

Offcanvas සංරචක

පහත දැක්වෙන්නේ පෙරනිමියෙන් පෙන්වන ඕෆ්කැන්වස් උදාහරණයකි ( .showඔන් හරහා .offcanvas). Offcanvas වසන බොත්තමක් සහිත ශීර්ෂයක් සඳහා සහය සහ සමහර ආරම්භක සඳහා විකල්ප ශරීර පන්තියක් ඇතුළත් වේ padding. අපි ඔබට හැකි සෑම විටම ඉවත දැමීමේ ක්‍රියාවන් සමඟ offcanvas ශීර්ෂ ඇතුළත් කිරීමට යෝජනා කරමු, නැතහොත් පැහැදිලි ඉවත් කිරීමේ ක්‍රියාවක් සපයන්න.

Offcanvas
Offcanvas සඳහා අන්තර්ගතය මෙතැනට යයි. ඔබට මෙහි ඕනෑම බූට්ස්ට්‍රැප් සංරචකයක් හෝ අභිරුචි මූලද්‍රව්‍යයන් පමණ තැබිය හැක.
<div class="offcanvas offcanvas-start" tabindex="-1" id="offcanvas" aria-labelledby="offcanvasLabel">
  <div class="offcanvas-header">
    <h5 class="offcanvas-title" id="offcanvasLabel">Offcanvas</h5>
    <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
  </div>
  <div class="offcanvas-body">
    Content for the offcanvas goes here. You can place just about any Bootstrap component or custom elements here.
  </div>
</div>

සජීවී නිරූපණය

.showපන්තිය සමඟ මූලද්‍රව්‍යයක් මත පන්තිය ටොගල් කරන JavaScript හරහා offcanvas මූලාංගයක් පෙන්වීමට සහ සැඟවීමට පහත බොත්තම් භාවිත කරන්න .offcanvas.

  • .offcanvasඅන්තර්ගතය සඟවයි (පෙරනිමිය)
  • .offcanvas.showඅන්තර්ගතය පෙන්වයි

ඔබට ගුණාංගය සමඟ සබැඳියක් hrefහෝ ගුණාංගය සහිත බොත්තමක් භාවිතා කළ හැකිය data-bs-target. අවස්ථා දෙකේදීම, data-bs-toggle="offcanvas"එය අවශ්ය වේ.

href සමඟ සම්බන්ධ කරන්න
Offcanvas
සමහර පෙළ තැන් දරන්නා ලෙස. සැබෑ ජීවිතයේ දී ඔබ තෝරාගත් අංග තිබිය හැකිය. කැමති, පෙළ, පින්තූර, ලැයිස්තු, ආදිය.
<a class="btn btn-primary" data-bs-toggle="offcanvas" href="#offcanvasExample" role="button" aria-controls="offcanvasExample">
  Link with href
</a>
<button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasExample" aria-controls="offcanvasExample">
  Button with data-bs-target
</button>

<div class="offcanvas offcanvas-start" tabindex="-1" id="offcanvasExample" aria-labelledby="offcanvasExampleLabel">
  <div class="offcanvas-header">
    <h5 class="offcanvas-title" id="offcanvasExampleLabel">Offcanvas</h5>
    <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
  </div>
  <div class="offcanvas-body">
    <div>
      Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.
    </div>
    <div class="dropdown mt-3">
      <button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-bs-toggle="dropdown">
        Dropdown button
      </button>
      <ul class="dropdown-menu" aria-labelledby="dropdownMenuButton">
        <li><a class="dropdown-item" href="#">Action</a></li>
        <li><a class="dropdown-item" href="#">Another action</a></li>
        <li><a class="dropdown-item" href="#">Something else here</a></li>
      </ul>
    </div>
  </div>
</div>

ස්ථානගත කිරීම

offcanvas සංරචක සඳහා පෙරනිමි ස්ථානගත කිරීමක් නොමැත, එබැවින් ඔබ පහත විකරණකාරක පන්තිවලින් එකක් එක් කළ යුතුය;

  • .offcanvas-startනැරඹුම් තොටේ වම් පසින් offcanvas ස්ථානගත කරන්න (ඉහත පෙන්වා ඇත)
  • .offcanvas-endදර්ශන තොටේ දකුණු පසින් offcanvas තබයි
  • .offcanvas-topදර්ශන තොටේ මුදුනේ offcanvas තබයි
  • .offcanvas-bottomදර්ශන තොටේ පතුලේ offcanvas තබයි

පහතින් ඉහළ, දකුණු සහ පහළ උදාහරණ උත්සාහ කරන්න.

Offcanvas ඉහළ
...
<button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasTop" aria-controls="offcanvasTop">Toggle top offcanvas</button>

<div class="offcanvas offcanvas-top" tabindex="-1" id="offcanvasTop" aria-labelledby="offcanvasTopLabel">
  <div class="offcanvas-header">
    <h5 id="offcanvasTopLabel">Offcanvas top</h5>
    <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
  </div>
  <div class="offcanvas-body">
    ...
  </div>
</div>
Offcanvas හරි
...
<button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasRight" aria-controls="offcanvasRight">Toggle right offcanvas</button>

<div class="offcanvas offcanvas-end" tabindex="-1" id="offcanvasRight" aria-labelledby="offcanvasRightLabel">
  <div class="offcanvas-header">
    <h5 id="offcanvasRightLabel">Offcanvas right</h5>
    <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
  </div>
  <div class="offcanvas-body">
    ...
  </div>
</div>
Offcanvas පතුලේ
...
<button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasBottom" aria-controls="offcanvasBottom">Toggle bottom offcanvas</button>

<div class="offcanvas offcanvas-bottom" tabindex="-1" id="offcanvasBottom" aria-labelledby="offcanvasBottomLabel">
  <div class="offcanvas-header">
    <h5 class="offcanvas-title" id="offcanvasBottomLabel">Offcanvas bottom</h5>
    <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
  </div>
  <div class="offcanvas-body small">
    ...
  </div>
</div>

පසුතලය

ඕෆ්කැන්වසයක් <body>සහ එහි පසුබිම පෙනෙන විට මූලද්‍රව්‍යය අනුචලනය කිරීම අබල වේ. අනුචලනය ටොගල් කිරීමට සහ පසුතිරය ටොගල් data-bs-scrollකිරීමට උපලක්ෂණය භාවිත කරන්න .<body>data-bs-backdrop

අනුචලනය සමඟ වර්ණ ගැන්වේ

මෙම විකල්පය ක්‍රියාත්මක වන ආකාරය බැලීමට පිටුවේ ඉතිරි කොටස අනුචලනය කිරීමට උත්සාහ කරන්න.

පසුබිම සහිත ඕෆ්කැන්වස්

.....

අනුචලනය සහිත පසුබිම

මෙම විකල්පය ක්‍රියාත්මක වන ආකාරය බැලීමට පිටුවේ ඉතිරි කොටස අනුචලනය කිරීමට උත්සාහ කරන්න.

<button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasScrolling" aria-controls="offcanvasScrolling">Enable body scrolling</button>
<button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasWithBackdrop" aria-controls="offcanvasWithBackdrop">Enable backdrop (default)</button>
<button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasWithBothOptions" aria-controls="offcanvasWithBothOptions">Enable both scrolling & backdrop</button>

<div class="offcanvas offcanvas-start" data-bs-scroll="true" data-bs-backdrop="false" tabindex="-1" id="offcanvasScrolling" aria-labelledby="offcanvasScrollingLabel">
  <div class="offcanvas-header">
    <h5 class="offcanvas-title" id="offcanvasScrollingLabel">Colored with scrolling</h5>
    <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
  </div>
  <div class="offcanvas-body">
    <p>Try scrolling the rest of the page to see this option in action.</p>
  </div>
</div>
<div class="offcanvas offcanvas-start" tabindex="-1" id="offcanvasWithBackdrop" aria-labelledby="offcanvasWithBackdropLabel">
  <div class="offcanvas-header">
    <h5 class="offcanvas-title" id="offcanvasWithBackdropLabel">Offcanvas with backdrop</h5>
    <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
  </div>
  <div class="offcanvas-body">
    <p>.....</p>
  </div>
</div>
<div class="offcanvas offcanvas-start" data-bs-scroll="true" tabindex="-1" id="offcanvasWithBothOptions" aria-labelledby="offcanvasWithBothOptionsLabel">
  <div class="offcanvas-header">
    <h5 class="offcanvas-title" id="offcanvasWithBothOptionsLabel">Backdrop with scrolling</h5>
    <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
  </div>
  <div class="offcanvas-body">
    <p>Try scrolling the rest of the page to see this option in action.</p>
  </div>
</div>

ප්රවේශ

Offcanvas පැනලය සංකල්පමය වශයෙන් ආකෘති සංවාදයක් වන බැවින් aria-labelledby="...", offcanvas මාතෘකාව යොමු කරමින්- වෙත එක් කිරීමට වග බලා ගන්න .offcanvas. role="dialog"අපි දැනටමත් JavaScript හරහා එය එකතු කර ඇති බැවින් ඔබට එකතු කිරීමට අවශ්‍ය නොවන බව සලකන්න .

සාස්

විචල්යයන්

$offcanvas-padding-y:               $modal-inner-padding;
$offcanvas-padding-x:               $modal-inner-padding;
$offcanvas-horizontal-width:        400px;
$offcanvas-vertical-height:         30vh;
$offcanvas-transition-duration:     .3s;
$offcanvas-border-color:            $modal-content-border-color;
$offcanvas-border-width:            $modal-content-border-width;
$offcanvas-title-line-height:       $modal-title-line-height;
$offcanvas-bg-color:                $modal-content-bg;
$offcanvas-color:                   $modal-content-color;
$offcanvas-box-shadow:              $modal-content-box-shadow-xs;
$offcanvas-backdrop-bg:             $modal-backdrop-bg;
$offcanvas-backdrop-opacity:        $modal-backdrop-opacity;

භාවිතය

offcanvas ප්ලගිනය බර ඉසිලීම හැසිරවීමට පන්ති කිහිපයක් සහ ගුණාංග භාවිතා කරයි:

  • .offcanvasඅන්තර්ගතය සඟවයි
  • .offcanvas.showඅන්තර්ගතය පෙන්වයි
  • .offcanvas-startවම් පසින් offcanvas සඟවයි
  • .offcanvas-endදකුණු පස ඇති offcanvas සඟවයි
  • .offcanvas-bottomපතුලේ ඇති offcanvas සඟවයි

data-bs-dismiss="offcanvas"ජාවාස්ක්‍රිප්ට් ක්‍රියාකාරීත්වය ක්‍රියාරම්භ කරන ගුණාංගය සමඟින් ඉවත් කිරීමේ බොත්තමක් එක් කරන්න . <button>සියලුම උපාංග හරහා නිසි හැසිරීම සඳහා එය සමඟ මූලද්‍රව්‍යය භාවිතා කිරීමට වග බලා ගන්න .

දත්ත ගුණාංග හරහා

ටොගල් කරන්න

data-bs-toggle="offcanvas"එක් ඕෆ්කැන්වස් මූලද්‍රව්‍යයක පාලනය ස්වයංක්‍රීයව පැවරීමට මූලද්‍රව්‍යයට එක් කරන්න data-bs-target. ගුණාංගය offcanvas යෙදීම සඳහා CSS තේරීමක් පිළිගනී href. offcanvas මූලද්‍රව්‍යයට data-bs-targetපන්තිය එක් කිරීමට වග බලා ගන්න . offcanvasඔබ එය පෙරනිමියෙන් විවෘත කිරීමට කැමති නම්, අමතර පන්තිය එක් කරන්න show.

අස් කරන්න

පහත දැක්වෙන පරිදි offcanvas තුළ ඇතිdata බොත්තමක් මත ඇති ගුණාංගය සමඟින් ඉවත් කිරීම සාක්ෂාත් කරගත හැකිය :

<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>

හෝ පහත දැක්වෙන පරිදි ඕෆ්කැන්වසයෙන් පිටත බොත්තමක් මත data-bs-target:

<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#my-offcanvas" aria-label="Close"></button>
offcanvas එකක් ඉවත දැමීමේ ක්‍රම දෙකම සහය දක්වන අතර, offcanvas එකක් පිටතින් ඉවත් කිරීම WAI-ARIA මාදිලියේ සංවාද මෝස්තර රටාවට නොගැලපෙන බව මතක තබා ගන්න . මෙය ඔබේම අවදානමකින් කරන්න.

JavaScript හරහා

සමඟ අතින් සබල කරන්න:

var offcanvasElementList = [].slice.call(document.querySelectorAll('.offcanvas'))
var offcanvasList = offcanvasElementList.map(function (offcanvasEl) {
  return new bootstrap.Offcanvas(offcanvasEl)
})

විකල්ප

දත්ත ගුණාංග හෝ JavaScript හරහා විකල්ප ලබා දිය හැක. දත්ත උපලක්ෂණ සඳහා, විකල්ප නාමය data-bs-, ලෙසට එකතු කරන්න data-bs-backdrop="".

නම ටයිප් කරන්න පෙරනිමිය විස්තර
backdrop බූලියන් true කැන්වස් විවෘතව තිබියදී ශරීරය මත පසුබිමක් යොදන්න
keyboard බූලියන් true ගැලවීමේ යතුර එබූ විට offcanvas එක වසා දමයි
scroll බූලියන් false Offcanvas විවෘතව ඇති අතරතුර ශරීරය අනුචලනය කිරීමට ඉඩ දෙන්න

ක්රම

අසමමුහුර්ත ක්රම සහ සංක්රාන්ති

සියලුම API ක්‍රම අසමමුහුර්ත වන අතර සංක්‍රාන්තියක් ආරම්භ කරන්න . සංක්‍රාන්තිය ආරම්භ වූ වහාම නමුත් එය අවසන් වීමට පෙර ඔවුන් නැවත අමතන්නා වෙත පැමිණේ . ඊට අමතරව, සංක්‍රාන්ති සංරචකයක ක්‍රම ඇමතුමක් නොසලකා හරිනු ඇත .

වැඩි විස්තර සඳහා අපගේ JavaScript ලේඛන බලන්න .

ඔබගේ අන්තර්ගතය offcanvas මූලද්‍රව්‍යයක් ලෙස සක්‍රිය කරයි. විකල්ප විකල්ප පිළිගනී object.

ඔබට ඉදිකිරීම්කරු සමඟ offcanvas අවස්ථාවක් සෑදිය හැක, උදාහරණයක් ලෙස:

var myOffcanvas = document.getElementById('myOffcanvas')
var bsOffcanvas = new bootstrap.Offcanvas(myOffcanvas)
ක්රමය විස්තර
toggle පෙන්වීමට හෝ සැඟවීමට offcanvas මූලාංගයක් ටොගල් කරයි. Offcanvas මූලද්‍රව්‍යය ඇත්ත වශයෙන්ම පෙන්වීමට හෝ සැඟවීමට පෙර (එනම් shown.bs.offcanvasහෝ hidden.bs.offcanvasසිදුවීම සිදුවීමට පෙර) ඇමතුම්කරු වෙත ආපසු පැමිණේ.
show offcanvas මූලාංගයක් පෙන්වයි. Offcanvas මූලද්‍රව්‍යය ඇත්ත වශයෙන්ම පෙන්වීමට පෙර (එනම් shown.bs.offcanvasසිදුවීම සිදුවීමට පෙර) ඇමතුම්කරු වෙත ආපසු පැමිණේ.
hide offcanvas මූලද්‍රව්‍ය සඟවයි. Offcanvas මූලද්‍රව්‍යය ඇත්ත වශයෙන්ම සැඟවීමට පෙර (එනම් hidden.bs.offcanvasසිදුවීම සිදුවීමට පෙර) ඇමතුම්කරු වෙත ආපසු පැමිණේ.
getInstance DOM මූලද්‍රව්‍යයක් හා සම්බන්ධ offcanvas අවස්ථාව ලබා ගැනීමට ඔබට ඉඩ සලසන ස්ථිතික ක්‍රමය
getOrCreateInstance DOM මූලද්‍රව්‍යයක් සමඟ සම්බන්ධිත offcanvas අවස්ථාව ලබා ගැනීමට ඔබට ඉඩ සලසන ස්ථිතික ක්‍රමය, නැතහොත් එය ආරම්භ නොකළහොත් නව එකක් නිර්මාණය කරන්න

සිදුවීම්

Bootstrap හි offcanvas පන්තිය offcanvas ක්‍රියාකාරීත්වයට සම්බන්ධ වීම සඳහා සිදුවීම් කිහිපයක් නිරාවරණය කරයි.

සිදුවීම් වර්ගය විස්තර
show.bs.offcanvas showනිදසුන් ක්‍රමය හැඳින්වූ විට මෙම සිදුවීම වහාම ක්‍රියාත්මක වේ.
shown.bs.offcanvas Offcanvas මූලද්‍රව්‍යයක් පරිශීලකයාට දෘශ්‍යමාන කර ඇති විට මෙම සිදුවීම ක්‍රියාත්මක වේ (CSS සංක්‍රාන්ති සම්පූර්ණ වන තෙක් බලා සිටිනු ඇත).
hide.bs.offcanvas hideක්රමවේදය කැඳවා ඇති විට මෙම සිද්ධිය වහාම වෙඩි තබා ඇත.
hidden.bs.offcanvas පරිශීලකයාගෙන් offcanvas මූලද්‍රව්‍යයක් සඟවා ඇති විට මෙම සිදුවීම ක්‍රියාත්මක වේ (CSS සංක්‍රාන්ති සම්පූර්ණ වන තෙක් බලා සිටිනු ඇත).
var myOffcanvas = document.getElementById('myOffcanvas')
myOffcanvas.addEventListener('hidden.bs.offcanvas', function () {
  // do something...
})