ଅଫକାନଭାସ୍ |
ନାଭିଗେସନ୍, ସପିଂ କାର୍ଟ, ଏବଂ କିଛି କ୍ଲାସ୍ ଏବଂ ଆମର ଜାଭାସ୍କ୍ରିପ୍ଟ ପ୍ଲଗଇନ୍ ସହିତ ଆପଣଙ୍କ ପ୍ରୋଜେକ୍ଟରେ ଲୁକ୍କାୟିତ ପାର୍ଶ୍ୱ ଦଣ୍ଡିକା ନିର୍ମାଣ କରନ୍ତୁ |
ଏହା କିପରି କାମ କରେ |
ଅଫକାନଭାସ୍ ହେଉଛି ଏକ ପାର୍ଶ୍ୱ ଦଣ୍ଡିକା ଉପାଦାନ ଯାହା ଭ୍ୟୁପୋର୍ଟର ବାମ, ଡାହାଣ, ଉପର, କିମ୍ବା ତଳ ଧାରରୁ ଦେଖାଯିବା ପାଇଁ ଜାଭାସ୍କ୍ରିପ୍ଟ ମାଧ୍ୟମରେ ଟୋଗଲ୍ ହୋଇପାରିବ | ବଟନ୍ କିମ୍ବା ଆଙ୍କର୍ ଟ୍ରିଗର ଭାବରେ ବ୍ୟବହୃତ ହୁଏ ଯାହାକି ତୁମେ ଟୋଗଲ୍ କରୁଥିବା ନିର୍ଦ୍ଦିଷ୍ଟ ଉପାଦାନ ସହିତ ସଂଯୁକ୍ତ, ଏବଂ data
ଆମର ଜାଭାସ୍କ୍ରିପ୍ଟକୁ ଡାକିବା ପାଇଁ ଗୁଣଗୁଡ଼ିକ ବ୍ୟବହୃତ ହୁଏ |
- ଅଫକାନଭାସ୍ ମୋଡାଲ୍ ପରି ସମାନ ଜାଭାସ୍କ୍ରିପ୍ଟ କୋଡ୍ ଅଂଶୀଦାର କରେ | ଧାରଣା ଅନୁଯାୟୀ, ସେଗୁଡ଼ିକ ସମ୍ପୂର୍ଣ୍ଣ ସମାନ, କିନ୍ତୁ ସେଗୁଡ଼ିକ ଅଲଗା ପ୍ଲଗଇନ୍ |
- ସେହିଭଳି, ଅଫକାନଭାସ୍ ର ଶ yles ଳୀ ଏବଂ ପରିମାପ ପାଇଁ କିଛି ଉତ୍ସ ସାସ୍ ଭେରିଏବଲ୍ ମୋଡାଲ୍ ଭେରିଏବଲ୍ ରୁ ଉତ୍ତରାଧିକାରୀ |
- ଯେତେବେଳେ ଦେଖାଯାଏ, ଅଫକାନଭାସ୍ ଏକ ଡିଫଲ୍ଟ ବ୍ୟାକଡ୍ରପ୍ ଅନ୍ତର୍ଭୂକ୍ତ କରେ ଯାହା ଅଫକାନଭାସ୍ ଲୁଚାଇବା ପାଇଁ କ୍ଲିକ୍ କରାଯାଇପାରିବ |
- ମୋଡାଲ ପରି, ଗୋଟିଏ ଥରରେ କେବଳ ଗୋଟିଏ ଅଫକାନଭା ଦେଖାଯାଇପାରିବ |
ମୁଣ୍ଡ ଉପରକୁ! CSS କିପରି ଆନିମେସନ୍ ନିୟନ୍ତ୍ରଣ କରେ, ଆପଣ ବ୍ୟବହାର କରିପାରିବେ ନାହିଁ margin
କିମ୍ବା translate
ଏକ .offcanvas
ଉପାଦାନରେ | ଏହା ପରିବର୍ତ୍ତେ, ଶ୍ରେଣୀକୁ ଏକ ସ୍ independent ାଧୀନ ରାପିଙ୍ଗ୍ ଉପାଦାନ ଭାବରେ ବ୍ୟବହାର କରନ୍ତୁ |
prefers-reduced-motion
ମିଡିଆ ଜିଜ୍ଞାସା ଉପରେ ନିର୍ଭରଶୀଳ | ଆମର ଆକ୍ସେସିବିଲିଟି ଡକ୍ୟୁମେଣ୍ଟେସନ୍ ର ହ୍ରାସ ହୋଇଥିବା ଗତି ବିଭାଗ ଦେଖନ୍ତୁ
|
ଉଦାହରଣଗୁଡିକ
ଅଫକାନଭାସ୍ ଉପାଦାନଗୁଡ଼ିକ |
ନିମ୍ନରେ ଏକ ଅଫକାନଭାସ୍ ଉଦାହରଣ ଅଛି ଯାହା ଡିଫଲ୍ଟ ଭାବରେ ଦେଖାଯାଏ ( .show
ଅନ ମାଧ୍ୟମରେ .offcanvas
) | ଅଫକାନଭାସ୍ ଏକ କ୍ଲୋଜ୍ ବଟନ୍ ସହିତ ଏକ ହେଡର୍ ପାଇଁ ସମର୍ଥନ ଏବଂ କିଛି ପ୍ରାରମ୍ଭିକ ପାଇଁ ଏକ ବ body କଳ୍ପିକ ଶରୀର ଶ୍ରେଣୀ ଅନ୍ତର୍ଭୁକ୍ତ କରେ padding
| ଆମେ ପରାମର୍ଶ ଦେଉଛୁ ଯେ ଆପଣ ଯେତେବେଳେ ବି ସମ୍ଭବ ବହିଷ୍କାର କାର୍ଯ୍ୟ ସହିତ ଅଫକାନଭାସ୍ ହେଡର୍ ଅନ୍ତର୍ଭୂକ୍ତ କରନ୍ତୁ, କିମ୍ବା ଏକ ସ୍ପଷ୍ଟ ବହିଷ୍କାର କାର୍ଯ୍ୟ ପ୍ରଦାନ କରନ୍ତୁ |
ଅଫକାନଭାସ୍ |
<div class="offcanvas offcanvas-start show" 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" 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
ଶ୍ରେଣୀ ସହିତ ଏକ ଉପାଦାନରେ ଶ୍ରେଣୀକୁ ଟୋଗଲ୍ କରେ .offcanvas
|
.offcanvas
ବିଷୟବସ୍ତୁ ଲୁଚାଏ (ଡିଫଲ୍ଟ).offcanvas.show
ବିଷୟବସ୍ତୁ ଦେଖାଏ |
ଆପଣ ଆଟ୍ରିବ୍ୟୁଟ୍ ସହିତ ଏକ ଲିଙ୍କ୍ href
, କିମ୍ବା ଆଟ୍ରିବ୍ୟୁଟ୍ ସହିତ ଏକ ବଟନ୍ ବ୍ୟବହାର କରିପାରିବେ data-bs-target
| ଉଭୟ କ୍ଷେତ୍ରରେ, data-bs-toggle="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" 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" data-bs-toggle="dropdown">
Dropdown button
</button>
<ul class="dropdown-menu">
<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>
ଶରୀର ସ୍କ୍ରୋଲିଂ |
<body>
ଏକ ଅଫକାନଭାସ୍ ଏବଂ ଏହାର ପୃଷ୍ଠଭୂମି ଦୃଶ୍ୟମାନ ହେଲେ ଉପାଦାନ ସ୍କ୍ରୋଲ୍ ଅକ୍ଷମ ହୋଇଥାଏ | ସ୍କ୍ରୋଲିଂ data-bs-scroll
ସକ୍ଷମ କରିବାକୁ ଆଟ୍ରିବ୍ୟୁଟ୍ ବ୍ୟବହାର କରନ୍ତୁ |<body>
ଶରୀର ସ୍କ୍ରୋଲିଂ ସହିତ ଅଫକାନଭାସ୍ |
ଏହି ବିକଳ୍ପକୁ କାର୍ଯ୍ୟରେ ଦେଖିବା ପାଇଁ ବାକି ପୃଷ୍ଠାକୁ ସ୍କ୍ରୋଲ୍ କରିବାକୁ ଚେଷ୍ଟା କରନ୍ତୁ |
<button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasScrolling" aria-controls="offcanvasScrolling">Enable body scrolling</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">Offcanvas with body scrolling</h5>
<button type="button" class="btn-close" 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>
ଶରୀର ସ୍କ୍ରୋଲିଂ ଏବଂ ପୃଷ୍ଠଭୂମି |
ଏକ ଦୃଶ୍ୟମାନ ପୃଷ୍ଠଭୂମି ସହିତ ଆପଣ <body>
ସ୍କ୍ରୋଲିଂକୁ ମଧ୍ୟ ସକ୍ଷମ କରିପାରିବେ |
ସ୍କ୍ରୋଲିଂ ସହିତ ପୃଷ୍ଠଭୂମି |
ଏହି ବିକଳ୍ପକୁ କାର୍ଯ୍ୟରେ ଦେଖିବା ପାଇଁ ବାକି ପୃଷ୍ଠାକୁ ସ୍କ୍ରୋଲ୍ କରିବାକୁ ଚେଷ୍ଟା କରନ୍ତୁ |
<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" 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" 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>
ଷ୍ଟାଟିକ୍ ପୃଷ୍ଠଭୂମି |
ଯେତେବେଳେ ବ୍ୟାକଡ୍ରପ୍ ସ୍ଥିର ହୋଇଯାଏ, ଏହାର ବାହାରେ କ୍ଲିକ୍ କରିବା ସମୟରେ ଅଫକାନଭାସ୍ ବନ୍ଦ ହେବ ନାହିଁ |
ଅଫକାନଭାସ୍ |
<button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#staticBackdrop" aria-controls="staticBackdrop">
Toggle static offcanvas
</button>
<div class="offcanvas offcanvas-start" data-bs-backdrop="static" tabindex="-1" id="staticBackdrop" aria-labelledby="staticBackdropLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="staticBackdropLabel">Offcanvas</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<div>
I will not close if you click outside of me.
</div>
</div>
</div>
ଗା ark ଅଫକାନଭାସ୍ |
V5.2.0 ରେ ଯୋଡା ଯାଇଛି |Change the appearance of offcanvases with utilities to better match them to different contexts like dark navbars. Here we add .text-bg-dark
to the .offcanvas
and .btn-close-white
to .btn-close
for proper styling with a dark offcanvas. If you have dropdowns within, consider also adding .dropdown-menu-dark
to .dropdown-menu
.
Offcanvas
Place offcanvas content here.
<div class="offcanvas offcanvas-start show text-bg-dark" tabindex="-1" id="offcanvasDark" aria-labelledby="offcanvasDarkLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="offcanvasDarkLabel">Offcanvas</h5>
<button type="button" class="btn-close btn-close-white" data-bs-dismiss="offcanvasDark" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<p>Place offcanvas content here.</p>
</div>
</div>
Responsive
Added in v5.2.0Responsive offcanvas classes hide content outside the viewport from a specified breakpoint and down. Above that breakpoint, the contents within will behave as usual. For example, .offcanvas-lg
hides content in an offcanvas below the lg
breakpoint, but shows the content above the lg
breakpoint.
Responsive offcanvas
This is content within an .offcanvas-lg
.
<button class="btn btn-primary d-lg-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasResponsive" aria-controls="offcanvasResponsive">Toggle offcanvas</button>
<div class="alert alert-info d-none d-lg-block">Resize your browser to show the responsive offcanvas toggle.</div>
<div class="offcanvas-lg offcanvas-end" tabindex="-1" id="offcanvasResponsive" aria-labelledby="offcanvasResponsiveLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="offcanvasResponsiveLabel">Responsive offcanvas</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#offcanvasResponsive" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<p class="mb-0">This is content within an <code>.offcanvas-lg</code>.</p>
</div>
</div>
ପ୍ରତ୍ୟେକ ବ୍ରେକପଏଣ୍ଟ ପାଇଁ ପ୍ରତିକ୍ରିୟାଶୀଳ ଅଫକାନଭାସ୍ କ୍ଲାସ୍ ଉପଲବ୍ଧ |
.offcanvas
.offcanvas-sm
.offcanvas-md
.offcanvas-lg
.offcanvas-xl
.offcanvas-xxl
ସ୍ଥାନ
ଅଫକାନଭାସ୍ ଉପାଦାନଗୁଡ଼ିକ ପାଇଁ କ default ଣସି ଡିଫଲ୍ଟ ପ୍ଲେସମେଣ୍ଟ୍ ନାହିଁ, ତେଣୁ ଆପଣଙ୍କୁ ନିମ୍ନରେ ଏକ ମୋଡିଫାୟର୍ କ୍ଲାସ୍ ମଧ୍ୟରୁ ଗୋଟିଏ ଯୋଡିବାକୁ ପଡିବ |
.offcanvas-start
ଭ୍ୟୁପୋର୍ଟର ବାମ ପାର୍ଶ୍ୱରେ ଅଫକାନଭାସ୍ ରଖେ (ଉପରେ ଦେଖାଯାଇଛି).offcanvas-end
ଭ୍ୟୁପୋର୍ଟର ଡାହାଣ ପାର୍ଶ୍ୱରେ ଅଫକାନଭାସ୍ ରଖେ |.offcanvas-top
ଭ୍ୟୁପୋର୍ଟର ଉପରେ ଅଫକାନଭାସ୍ ରଖେ |.offcanvas-bottom
ଭ୍ୟୁପୋର୍ଟର ତଳେ ଅଫକାନଭାସ୍ ରଖେ |
ନିମ୍ନରେ ଉପର, ଡାହାଣ ଏବଂ ନିମ୍ନ ଉଦାହରଣଗୁଡିକ ଚେଷ୍ଟା କରନ୍ତୁ |
ଅଫକାନଭାସ୍ ଟପ୍ |
<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 class="offcanvas-title" id="offcanvasTopLabel">Offcanvas top</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
...
</div>
</div>
ଅଫକାନଭାସ୍ ଠିକ୍ |
<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 class="offcanvas-title" id="offcanvasRightLabel">Offcanvas right</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
...
</div>
</div>
ଅଫକାନଭାସ୍ ତଳ |
<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" data-bs-dismiss="offcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body small">
...
</div>
</div>
ଅଭିଗମ୍ୟତା
aria-labelledby="..."
ଯେହେତୁ ଅଫକାନଭାସ୍ ପ୍ୟାନେଲ୍ ଧାରଣାଗତ ଭାବରେ ଏକ ମୋଡାଲ୍ ସଂଳାପ, ତେଣୁ ଅଫକାନଭାସ୍ ଟାଇଟଲ୍ ରେଫରେନ୍ସ କରିବାକୁ ଯୋଡିବାକୁ ନିଶ୍ଚିତ ହୁଅନ୍ତୁ .offcanvas
| ଧ୍ୟାନ ଦିଅନ୍ତୁ ଯେ ଆପଣ ଏହାକୁ ଯୋଡିବା ଆବଶ୍ୟକ କରନ୍ତି ନାହିଁ role="dialog"
ଯେହେତୁ ଆମେ ଏହାକୁ ଜାଭାସ୍କ୍ରିପ୍ଟ ମାଧ୍ୟମରେ ଯୋଡିଥାଉ |
CSS
ଭେରିଏବଲ୍ |
V5.2.0 ରେ ଯୋଡା ଯାଇଛି |As part of Bootstrap’s evolving CSS variables approach, offcanvas now uses local CSS variables on .offcanvas
for enhanced real-time customization. Values for the CSS variables are set via Sass, so Sass customization is still supported, too.
--#{$prefix}offcanvas-zindex: #{$zindex-offcanvas};
--#{$prefix}offcanvas-width: #{$offcanvas-horizontal-width};
--#{$prefix}offcanvas-height: #{$offcanvas-vertical-height};
--#{$prefix}offcanvas-padding-x: #{$offcanvas-padding-x};
--#{$prefix}offcanvas-padding-y: #{$offcanvas-padding-y};
--#{$prefix}offcanvas-color: #{$offcanvas-color};
--#{$prefix}offcanvas-bg: #{$offcanvas-bg-color};
--#{$prefix}offcanvas-border-width: #{$offcanvas-border-width};
--#{$prefix}offcanvas-border-color: #{$offcanvas-border-color};
--#{$prefix}offcanvas-box-shadow: #{$offcanvas-box-shadow};
Sass variables
$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;
Usage
The offcanvas plugin utilizes a few classes and attributes to handle the heavy lifting:
.offcanvas
hides the content.offcanvas.show
shows the content.offcanvas-start
hides the offcanvas on the left.offcanvas-end
hides the offcanvas on the right.offcanvas-top
hides the offcanvas on the top.offcanvas-bottom
hides the offcanvas on the bottom
Add a dismiss button with the data-bs-dismiss="offcanvas"
attribute, which triggers the JavaScript functionality. Be sure to use the <button>
element with it for proper behavior across all devices.
Via data attributes
Toggle
Add data-bs-toggle="offcanvas"
and a data-bs-target
or href
to the element to automatically assign control of one offcanvas element. The data-bs-target
attribute accepts a CSS selector to apply the offcanvas to. Be sure to add the class offcanvas
to the offcanvas element. If you’d like it to default open, add the additional class show
.
Dismiss
Dismissal can be achieved with the data
attribute on a button within the offcanvas as demonstrated below:
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
or on a button outside the offcanvas using the data-bs-target
as demonstrated below:
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#my-offcanvas" aria-label="Close"></button>
Via JavaScript
Enable manually with:
const offcanvasElementList = document.querySelectorAll('.offcanvas')
const offcanvasList = [...offcanvasElementList].map(offcanvasEl => new bootstrap.Offcanvas(offcanvasEl))
Options
As options can be passed via data attributes or JavaScript, you can append an option name to data-bs-
, as in data-bs-animation="{value}"
. Make sure to change the case type of the option name from “camelCase” to “kebab-case” when passing the options via data attributes. For example, use data-bs-custom-class="beautifier"
instead of data-bs-customClass="beautifier"
.
As of Bootstrap 5.2.0, all components support an experimental reserved data attribute data-bs-config
that can house simple component configuration as a JSON string. When an element has data-bs-config='{"delay":0, "title":123}'
and data-bs-title="456"
attributes, the final title
value will be 456
and the separate data attributes will override values given on data-bs-config
. In addition, existing data attributes are able to house JSON values like data-bs-delay='{"show":0,"hide":150}'
.
Name | Type | Default | Description |
---|---|---|---|
backdrop |
boolean or the string static |
true |
Apply a backdrop on body while offcanvas is open. Alternatively, specify static for a backdrop which doesn’t close the offcanvas when clicked. |
keyboard |
boolean | true |
Closes the offcanvas when escape key is pressed. |
scroll |
boolean | false |
Allow body scrolling while offcanvas is open. |
Methods
Asynchronous methods and transitions
All API methods are asynchronous and start a transition. They return to the caller as soon as the transition is started but before it ends. In addition, a method call on a transitioning component will be ignored.
Activates your content as an offcanvas element. Accepts an optional options object
.
You can create an offcanvas instance with the constructor, for example:
const bsOffcanvas = new bootstrap.Offcanvas('#myOffcanvas')
Method | Description |
---|---|
getInstance |
Static method which allows you to get the offcanvas instance associated with a DOM element. |
getOrCreateInstance |
Static method which allows you to get the offcanvas instance associated with a DOM element, or create a new one in case it wasn’t initialized. |
hide |
Hides an offcanvas element. Returns to the caller before the offcanvas element has actually been hidden (i.e. before the hidden.bs.offcanvas event occurs). |
show |
Shows an offcanvas element. Returns to the caller before the offcanvas element has actually been shown (i.e. before the shown.bs.offcanvas event occurs). |
toggle |
Toggles an offcanvas element to shown or hidden. Returns to the caller before the offcanvas element has actually been shown or hidden (i.e. before the shown.bs.offcanvas or hidden.bs.offcanvas event occurs). |
Events
Bootstrap’s offcanvas class exposes a few events for hooking into offcanvas functionality.
Event type | Description |
---|---|
hide.bs.offcanvas |
This event is fired immediately when the hide method has been called. |
hidden.bs.offcanvas |
This event is fired when an offcanvas element has been hidden from the user (will wait for CSS transitions to complete). |
hidePrevented.bs.offcanvas |
This event is fired when the offcanvas is shown, its backdrop is static and a click outside of the offcanvas is performed. The event is also fired when the escape key is pressed and the keyboard option is set to false . |
show.bs.offcanvas |
This event fires immediately when the show instance method is called. |
shown.bs.offcanvas |
This event is fired when an offcanvas element has been made visible to the user (will wait for CSS transitions to complete). |
const myOffcanvas = document.getElementById('myOffcanvas')
myOffcanvas.addEventListener('hidden.bs.offcanvas', event => {
// do something...
})