精品久久久久久亚洲精品_成人午夜网站_www日本高清_亚洲精品久久久久午夜福

滑動導(dǎo)航(Offcanvas)

使用一些類和我們的JavaScript插件在項目中構(gòu)建隱藏的側(cè)邊欄,用于導(dǎo)航、購物車等。

工作原理

Offcanvas是一個側(cè)邊欄組件,可以通過JavaScript進行切換,從視口的左、右或下邊緣顯示。按鈕或錨點用作觸發(fā)器,附加到您切換的特定元素,數(shù)據(jù)屬性用于調(diào)用我們的JavaScript。

  • Offcanvas與modals共享一些相同的JavaScript代碼。從概念上講,它們非常相似,但它們是獨立的插件。
  • 類似地,offcanvas的樣式和維度的一些源Sass變量是從modal的變量繼承的。
  • 當(dāng)顯示時,Offcanvas包括一個默認(rèn)的背景,可以點擊隱藏隱藏的畫布。
  • 與模態(tài)框類似,一次只能顯示一個offcanvas。

注意! 考慮到CSS處理動畫的方式,您不能在.offcanvas元素上使用margin或translate。相反,將類用作獨立的包裝元素。

此組件的動畫效果取決于“首選簡化運動媒體”查詢。

示例

組件

下面是一個默認(rèn)顯示的offcanvas示例(via.show on.offcanvas)。Offcanvas包括對帶有關(guān)閉按鈕的標(biāo)題的支持,以及對一些初始填充的可選主體類。我們建議您盡可能將offcanvas頭包含在dismise操作中,或者提供顯式dismise操作。

Offcanvas
Content for the offcanvas goes here. You can place just about any Bootstrap component or custom elements here.
<div class="offcanvas offcanvas-start show" tabindex="-1" id="offcanvas" aria-labelledby="offcanvasLabel" data-bs-backdrop="false" data-bs-scroll="true">
<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>

實例演示

使用下面的按鈕可以通過JavaScript顯示和隱藏offcanvas元素,JavaScript將元素上的.show類與.offcanvas類切換。

  • .offcanvas 隱藏內(nèi)容(默認(rèn))
  • .offcanvas.show 顯示內(nèi)容

可以使用帶有href屬性的鏈接,也可以使用帶有data-bs-target屬性的按鈕。在這兩種情況下,都需要數(shù)據(jù)data-bs-toggle="offcanvas"

Link with href
Offcanvas
Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.
<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組件的默認(rèn)位置,因此必須添加下面的一個修飾符類;

  • .offcanvas-start 放置在視口左側(cè)(如上所示)
  • .offcanvas-end 放置在視口的右側(cè)
  • .offcanvas-bottom 放置在視口的底部

試試下面右邊和下面的例子。

Offcanvas right
...
<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 bottom
...
<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>

背景

當(dāng) offcanvas及其背景可見時,將禁用滾動元素。使用data-bs-scroll屬性切換body滾動,使用data-bs-backdrop切換背景。

Colored with scrolling

Try scrolling the rest of the page to see this option in action.

Offcanvas with backdrop

.....

Backdroped with scrolling

Try scrolling the rest of the page to see this option in action.

<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">Backdroped 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面板在概念上是一個模態(tài)對話框,請確保添加aria labelledby=“…”-引用offcanvas標(biāo)題到.offcanvas。注意,您不需要添加role=“dialog”,因為我們已經(jīng)通過JavaScript添加了它。

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-body-backdrop-color:     rgba($modal-backdrop-bg, $modal-backdrop-opacity);
$offcanvas-box-shadow:              $modal-content-box-shadow-xs;

用法

offcanvas插件利用幾個類和屬性來處理繁重的工作:

  • .offcanvas 隱藏內(nèi)容
  • .offcanvas.show 顯示內(nèi)容
  • .offcanvas-start offcanvas隱藏到左側(cè)
  • .offcanvas-end 隱藏到右側(cè)
  • .offcanvas-bottom 隱藏到底部

添加一個帶有data-bs-dismiss="offcanvas" 屬性的dismise按鈕,該屬性觸發(fā)JavaScript功能。一定要使用button元素在所有設(shè)備上進行正確的操作。 Add a dismiss button with the attribute, which triggers the JavaScript functionality. Be sure to use the <button> element with it for proper behavior across all devices.

通過數(shù)據(jù)屬性

向元素添加data-bs-toggle="offcanvas"data-bs-target or href,以自動分配對一個offcanvas元素的控制。data-bs-target屬性接受CSS選擇器來應(yīng)用offcanvas。確保將類offcanvas添加到offcanvas元素。如果希望它默認(rèn)打開,請?zhí)砑宇~外的show類。

通過JavaScript

手動啟用:

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

選項

選項可以通過數(shù)據(jù)屬性或JavaScript傳遞。對于數(shù)據(jù)屬性,將選項名稱附加到data- bs-,如data-bs-backdrop=""

Name Type Default Description
backdrop boolean true 當(dāng)offcanvas打開時在主體上應(yīng)用背景
keyboard boolean true 按escape鍵時關(guān)閉offcanvas
scroll boolean false 允許在offcanvas打開時滾動正文

方法

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.

將內(nèi)容激活為 offcanvas。接受可選選項對象。

可以使用構(gòu)造函數(shù)創(chuàng)建offcanvas實例,例如:

var myOffcanvas = document.getElementById('myOffcanvas')
var bsOffcanvas = new bootstrap.Offcanvas(myOffcanvas)
Method Description
toggle 將offcanvas元素切換為“顯示”或“隱藏”。在實際顯示或隱藏offcanvas元素之前(即在發(fā)生show.bs.offcanvas或hidden.bs.offcanvas事件之前)返回調(diào)用方。
show 顯示offcanvas元素。在實際顯示offcanvas元素之前(即,在show.bs.offcanvas事件發(fā)生之前)返回調(diào)用方。
hide 隱藏offcanvas元素。在offcanvas元素實際隱藏之前(即在hidden.bs.offcanvas事件發(fā)生之前)返回給調(diào)用方。
_getInstance 靜態(tài)方法,它允許您獲取與DOM元素關(guān)聯(lián)的offcanvas實例

事件

Bootstrap的offcanvas類公開了一些事件,用于連接到offcanvas功能。

Event type Description
show.bs.offcanvas 調(diào)用show instance方法時,此事件立即激發(fā)。
shown.bs.offcanvas 當(dāng)offcanvas元素對用戶可見時(將等待CSS轉(zhuǎn)換完成),將觸發(fā)此事件。
hide.bs.offcanvas 調(diào)用hide方法后,會立即激發(fā)他的事件。
hidden.bs.offcanvas 當(dāng)對用戶隱藏offcanvas元素時(將等待CSS轉(zhuǎn)換完成),將觸發(fā)此事件。
var myOffcanvas = document.getElementById('myOffcanvas')
myOffcanvas.addEventListener('hidden.bs.offcanvas', function () {
// do something...
})
返回頂部
精品久久久久久亚洲精品_成人午夜网站_www日本高清_亚洲精品久久久久午夜福

      国产精品免费看片| 欧美人成在线视频| 这里只有视频精品| 一区在线免费| 国产日韩欧美二区| 欧美日韩一区二区精品| 欧美 亚欧 日韩视频在线| 亚洲欧美精品在线| 亚洲影视九九影院在线观看| 亚洲人人精品| 精品成人久久| 国内精品**久久毛片app| 国产精品久久久久久福利一牛影视| 麻豆av一区二区三区| 欧美一区二区三区在线观看| 亚洲午夜成aⅴ人片| 亚洲剧情一区二区| 亚洲精品一区二区在线观看| 在线观看国产精品淫| 国内精品亚洲| 一区二区在线视频观看| 韩国美女久久| 狠色狠色综合久久| 亚洲高清网站| 亚洲日本欧美| 99国产精品久久久久久久成人热| 亚洲人成免费| 亚洲日本中文字幕| 9l国产精品久久久久麻豆| 9色精品在线| 一区二区三区精品国产| 一区二区三区久久久| 一区二区日本视频| 亚洲在线免费视频| 午夜激情亚洲| 久久免费99精品久久久久久| 浪潮色综合久久天堂| 欧美成人一区二区| 欧美午夜一区二区三区免费大片 | 免费一区视频| 欧美a级片网| 国产精品国产三级国产a| 国产精品亚洲成人| 国内精品视频在线观看| 亚洲观看高清完整版在线观看| 亚洲片在线资源| 在线午夜精品| 久久久久久久综合狠狠综合| 欧美肥婆在线| 国产精品国色综合久久| 国产综合色精品一区二区三区| 伊人精品久久久久7777| 一本色道88久久加勒比精品| 欧美一区二区三区视频在线观看| 欧美3dxxxxhd| 国产精品一区二区三区久久久| 激情久久久久久久| 日韩一区二区电影网| 欧美在线亚洲在线| 欧美另类视频在线| 国产偷久久久精品专区| 日韩亚洲欧美成人| 久久国产免费| 欧美性猛片xxxx免费看久爱| 狠狠色狠狠色综合日日小说| 日韩亚洲欧美成人一区| 久久人人97超碰人人澡爱香蕉| 欧美日韩在线观看一区二区| 在线看片日韩| 欧美一区二区网站| 欧美三区美女| 亚洲精品少妇| 久久视频国产精品免费视频在线| 国产精品xxx在线观看www| 亚洲成色999久久网站| 小辣椒精品导航| 国产精品久久| aa级大片欧美三级| 欧美va亚洲va国产综合| 很黄很黄激情成人| 欧美一二三区在线观看| 国产精品video| 一本久久综合亚洲鲁鲁| 欧美高清不卡| 亚洲人成网站在线播| 老司机精品视频一区二区三区| 国产精品视频网址| 亚洲在线观看免费| 国产精品久久久久国产a级| 亚洲精选在线| 欧美人与禽性xxxxx杂性| 亚洲黄色免费电影| 欧美国产日韩亚洲一区| 亚洲国产欧美日韩| 欧美福利一区二区三区| 日韩亚洲国产精品| 欧美日韩影院| 亚洲欧美日韩天堂| 国产欧美一区视频| 久久久另类综合| 在线观看一区二区精品视频| 你懂的国产精品| 亚洲激情校园春色| 欧美日韩国产免费观看| 一二三区精品福利视频| 国产精品久久久99| 亚洲欧美久久久| 激情国产一区二区| 欧美日本免费| 亚洲综合国产| 欲香欲色天天天综合和网| 欧美成人午夜免费视在线看片 | 欧美精品自拍| 亚洲午夜影视影院在线观看| 国产精品腿扒开做爽爽爽挤奶网站| 午夜亚洲视频| 亚洲国产日韩在线| 国产精品视频精品| 久热国产精品| 亚洲线精品一区二区三区八戒| 国产欧美日韩另类视频免费观看| 久久久久欧美精品| 亚洲靠逼com| 国产日韩一区二区| 欧美伦理91i| 欧美中文在线字幕| 亚洲精品在线观看视频| 国产精品视频网| 嫩模写真一区二区三区三州| 亚洲伊人久久综合| 亚洲第一天堂无码专区| 国产精品av免费在线观看| 久久久精品999| 一区二区日韩免费看| 国产一区二区三区不卡在线观看| 欧美激情第五页| 欧美呦呦网站| 亚洲一区二区久久| 亚洲国产视频直播| 国产有码一区二区| 欧美体内she精视频在线观看| 久久久精品国产免费观看同学| 一区二区日韩伦理片| 亚洲国产人成综合网站| 国产伦精品一区二区| 欧美视频免费在线| 欧美国产日韩免费| 六月天综合网| 久久三级视频| 久久久成人网| 欧美中文字幕在线| 亚洲欧美久久久| 亚洲制服欧美中文字幕中文字幕| 亚洲另类视频| 亚洲伦理久久| 亚洲人体偷拍| 亚洲精品一区二区三区蜜桃久 | 美女国产一区| 久久久午夜精品| 久久福利影视| 久久精品系列| 久久久999成人| 久久精品久久综合| 久久精品国产免费看久久精品| 香蕉乱码成人久久天堂爱免费 | 欧美中文字幕不卡| 亚欧成人在线| 久久丁香综合五月国产三级网站| 亚洲免费在线视频一区 二区| 亚洲午夜在线观看视频在线| 99re热这里只有精品免费视频| 日韩视频免费在线| 在线一区二区视频| 亚洲午夜国产成人av电影男同| 亚洲一区二区伦理| 亚洲综合不卡| 欧美在线观看一区| 久久人91精品久久久久久不卡| 亚洲专区在线视频| 亚洲午夜视频在线| 性欧美大战久久久久久久久| 性做久久久久久| 久久综合国产精品| 欧美日韩精品一区二区在线播放| 欧美日韩在线观看一区二区| 国产精品国产三级国产| 国语自产精品视频在线看| 精品福利免费观看| 一区二区三区国产在线观看| 亚洲一区国产视频| 久久乐国产精品| 欧美日韩国产美| 国产日韩在线播放| 亚洲精品乱码久久久久| 亚洲香蕉成视频在线观看| 亚洲欧美日韩精品久久亚洲区| 久久九九免费| 欧美网站大全在线观看| 国内精品美女在线观看| 99精品国产福利在线观看免费 |