اسڪراول اسپيس
خود بخود بوٽ اسٽريپ نيويگيشن کي اپڊيٽ ڪريو يا اسڪرول پوزيشن جي بنياد تي گروپ جي اجزاء کي لسٽ ڪريو انهي کي ظاهر ڪرڻ لاءِ ته ڪھڙي لنڪ في الحال viewport ۾ سرگرم آھي.
اهو ڪيئن ڪم ڪري ٿو
Scrollspy .active
ڪلاس کي ٽوگل ڪري ٿو لنگر ( <a>
) عناصر تي جڏهن عنصر id
کي لنگر جي حوالي سان href
اسڪرول ڪيو وڃي ٿو ڏسڻ ۾. Scrollspy بهترين طور تي استعمال ڪيو ويندو آهي بوٽ اسٽريپ نيو جزو يا فهرست گروپ سان گڏ ، پر اهو پڻ ڪم ڪندو ڪنهن به اينڪر عناصر سان موجوده صفحي ۾. هتي اهو ڪيئن ڪم ڪندو آهي.
-
شروع ڪرڻ لاءِ، scrollspy کي ٻن شين جي ضرورت آھي: ھڪ نيويگيشن، لسٽ گروپ، يا لنڪن جو ھڪڙو سادو سيٽ، گڏوگڏ ھڪ اسڪرول لائق ڪنٽينر. سکرولبل ڪنٽينر ٿي سگهي ٿو
<body>
يا هڪ ڪسٽم عنصر سان سيٽheight
۽overflow-y: scroll
. -
اسڪرول قابل ڪنٽينر تي، شامل ڪريو
data-bs-spy="scroll"
۽data-bs-target="#navId"
ڪٿيnavId
آھي منفردid
جڙيل نيويگيشن.tabindex="0"
ڪيبورڊ جي رسائي کي يقيني بڻائڻ لاءِ پڻ شامل ڪرڻ جي پڪ ڪريو. -
جئين توهان "جاسوسي" ڪنٽينر کي اسڪرال ڪيو، هڪ
.active
ڪلاس شامل ڪيو ويو آهي ۽ لاڳاپيل نيويگيشن اندر لنگر لنڪس مان هٽايو ويو آهي. ڳنڍڻن کي حل ڪرڻ لائقid
ھدف ھئڻ گھرجي، ٻي صورت ۾ انھن کي نظرانداز ڪيو ويندو. مثال طور، هڪ<a href="#home">home</a>
لازمي طور تي DOM ۾ ڪنهن شيءِ سان ملندڙ جلندڙ هجي<div id="home"></div>
-
ھدف عناصر جيڪي نظر نه ايندا آھن نظر انداز ڪيا ويندا. هيٺ ڏسو غير نظر ايندڙ عناصر سيڪشن.
مثال
نوبار
نيوبار جي هيٺان علائقي کي اسڪرول ڪريو ۽ فعال طبقي جي تبديلي کي ڏسو. ڊراپ ڊائون مينيو کوليو ۽ ڏسو ڊراپ ڊائون آئٽمز پڻ نمايان ٿين.
پهريون عنوان
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
ٻيو عنوان
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
ٽيون عنوان
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
چوٿون عنوان
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
پنجون عنوان
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
<nav id="navbar-example2" class="navbar bg-light px-3 mb-3">
<a class="navbar-brand" href="#">Navbar</a>
<ul class="nav nav-pills">
<li class="nav-item">
<a class="nav-link" href="#scrollspyHeading1">First</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#scrollspyHeading2">Second</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" data-bs-toggle="dropdown" href="#" role="button" aria-expanded="false">Dropdown</a>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="#scrollspyHeading3">Third</a></li>
<li><a class="dropdown-item" href="#scrollspyHeading4">Fourth</a></li>
<li><hr class="dropdown-divider"></li>
<li><a class="dropdown-item" href="#scrollspyHeading5">Fifth</a></li>
</ul>
</li>
</ul>
</nav>
<div data-bs-spy="scroll" data-bs-target="#navbar-example2" data-bs-root-margin="0px 0px -40%" data-bs-smooth-scroll="true" class="scrollspy-example bg-light p-3 rounded-2" tabindex="0">
<h4 id="scrollspyHeading1">First heading</h4>
<p>...</p>
<h4 id="scrollspyHeading2">Second heading</h4>
<p>...</p>
<h4 id="scrollspyHeading3">Third heading</h4>
<p>...</p>
<h4 id="scrollspyHeading4">Fourth heading</h4>
<p>...</p>
<h4 id="scrollspyHeading5">Fifth heading</h4>
<p>...</p>
</div>
Nested nav
Scrollspy پڻ nested سان ڪم ڪري .nav
ٿو. جيڪڏهن هڪ nested .nav
آهي .active
، ان جا والدين به هوندا .active
. نيوبار جي اڳيان واري علائقي کي اسڪرول ڪريو ۽ فعال طبقي جي تبديلي کي ڏسو.
شئي 1
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
ذهن ۾ رکو ته جاوا اسڪرپٽ پلگ ان جي ڪوشش ڪري ٿي صحيح عنصر کي چونڊڻ جي وچ ۾ جيڪي نظر اچن ٿيون. هڪ ئي وقت ۾ گھڻا ڏٺل اسڪراول اسپيس ھدف ڪجھ مسئلا پيدا ڪري سگھن ٿا.
شئي 1-1
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
ذهن ۾ رکو ته جاوا اسڪرپٽ پلگ ان جي ڪوشش ڪري ٿي صحيح عنصر کي چونڊڻ جي وچ ۾ جيڪي نظر اچن ٿيون. هڪ ئي وقت ۾ گھڻا ڏٺل اسڪراول اسپيس ھدف ڪجھ مسئلا پيدا ڪري سگھن ٿا.
شئي 1-2
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
ذهن ۾ رکو ته جاوا اسڪرپٽ پلگ ان جي ڪوشش ڪري ٿي صحيح عنصر کي چونڊڻ جي وچ ۾ جيڪي نظر اچن ٿيون. هڪ ئي وقت ۾ گھڻا ڏٺل اسڪراول اسپيس ھدف ڪجھ مسئلا پيدا ڪري سگھن ٿا.
شئي 2
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
ذهن ۾ رکو ته جاوا اسڪرپٽ پلگ ان جي ڪوشش ڪري ٿي صحيح عنصر کي چونڊڻ جي وچ ۾ جيڪي نظر اچن ٿيون. هڪ ئي وقت ۾ گھڻا ڏٺل اسڪراول اسپيس ھدف ڪجھ مسئلا پيدا ڪري سگھن ٿا.
شئي 3
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
ذهن ۾ رکو ته جاوا اسڪرپٽ پلگ ان جي ڪوشش ڪري ٿي صحيح عنصر کي چونڊڻ جي وچ ۾ جيڪي نظر اچن ٿيون. هڪ ئي وقت ۾ گھڻا ڏٺل اسڪراول اسپيس ھدف ڪجھ مسئلا پيدا ڪري سگھن ٿا.
شئي 3-1
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
ذهن ۾ رکو ته جاوا اسڪرپٽ پلگ ان جي ڪوشش ڪري ٿي صحيح عنصر کي چونڊڻ جي وچ ۾ جيڪي نظر اچن ٿيون. هڪ ئي وقت ۾ گھڻا ڏٺل اسڪراول اسپيس ھدف ڪجھ مسئلا پيدا ڪري سگھن ٿا.
شئي 3-2
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
ذهن ۾ رکو ته جاوا اسڪرپٽ پلگ ان جي ڪوشش ڪري ٿي صحيح عنصر کي چونڊڻ جي وچ ۾ جيڪي نظر اچن ٿيون. هڪ ئي وقت ۾ گھڻا ڏٺل اسڪراول اسپيس ھدف ڪجھ مسئلا پيدا ڪري سگھن ٿا.
<div class="row">
<div class="col-4">
<nav id="navbar-example3" class="h-100 flex-column align-items-stretch pe-4 border-end">
<nav class="nav nav-pills flex-column">
<a class="nav-link" href="#item-1">Item 1</a>
<nav class="nav nav-pills flex-column">
<a class="nav-link ms-3 my-1" href="#item-1-1">Item 1-1</a>
<a class="nav-link ms-3 my-1" href="#item-1-2">Item 1-2</a>
</nav>
<a class="nav-link" href="#item-2">Item 2</a>
<a class="nav-link" href="#item-3">Item 3</a>
<nav class="nav nav-pills flex-column">
<a class="nav-link ms-3 my-1" href="#item-3-1">Item 3-1</a>
<a class="nav-link ms-3 my-1" href="#item-3-2">Item 3-2</a>
</nav>
</nav>
</nav>
</div>
<div class="col-8">
<div data-bs-spy="scroll" data-bs-target="#navbar-example3" data-bs-smooth-scroll="true" class="scrollspy-example-2" tabindex="0">
<div id="item-1">
<h4>Item 1</h4>
<p>...</p>
</div>
<div id="item-1-1">
<h5>Item 1-1</h5>
<p>...</p>
</div>
<div id="item-1-2">
<h5>Item 1-2</h5>
<p>...</p>
</div>
<div id="item-2">
<h4>Item 2</h4>
<p>...</p>
</div>
<div id="item-3">
<h4>Item 3</h4>
<p>...</p>
</div>
<div id="item-3-1">
<h5>Item 3-1</h5>
<p>...</p>
</div>
<div id="item-3-2">
<h5>Item 3-2</h5>
<p>...</p>
</div>
</div>
</div>
</div>
فهرست گروپ
Scrollspy ايس سان گڏ ڪم ڪري .list-group
ٿو. لسٽ گروپ جي اڳيان واري علائقي کي اسڪرول ڪريو ۽ فعال طبقي جي تبديلي کي ڏسو.
شئي 1
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
شئي 2
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
شئي 3
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
شئي 4
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
<div class="row">
<div class="col-4">
<div id="list-example" class="list-group">
<a class="list-group-item list-group-item-action" href="#list-item-1">Item 1</a>
<a class="list-group-item list-group-item-action" href="#list-item-2">Item 2</a>
<a class="list-group-item list-group-item-action" href="#list-item-3">Item 3</a>
<a class="list-group-item list-group-item-action" href="#list-item-4">Item 4</a>
</div>
</div>
<div class="col-8">
<div data-bs-spy="scroll" data-bs-target="#list-example" data-bs-smooth-scroll="true" class="scrollspy-example" tabindex="0">
<h4 id="list-item-1">Item 1</h4>
<p>...</p>
<h4 id="list-item-2">Item 2</h4>
<p>...</p>
<h4 id="list-item-3">Item 3</h4>
<p>...</p>
<h4 id="list-item-4">Item 4</h4>
<p>...</p>
</div>
</div>
</div>
سادي لنگر
Scrollspy نيوي اجزاء ۽ فهرست گروپن تائين محدود ناهي، تنهنڪري اهو <a>
موجوده دستاويز ۾ ڪنهن به لنگر عناصر تي ڪم ڪندو. علائقي کي ڇڪيو ۽ .active
ڪلاس جي تبديلي کي ڏسو.
شئي 1
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
شئي 2
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
شئي 3
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
شئي 4
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
شئي 5
هي آهي ڪجهه جڳهه وارو مواد scrollspy صفحي لاءِ. نوٽ ڪريو ته جيئن توھان صفحو ھيٺ لٿو، مناسب نيويگيشن لنڪ نمايان ٿيل آھي. اهو سڄو جزو مثال ۾ بار بار ڪيو ويو آهي. اسان طومار ڪرڻ ۽ نمايان ڪرڻ تي زور ڏيڻ لاءِ هتي ڪجهه وڌيڪ مثال ڪاپي شامل ڪندا رهون ٿا.
<div class="row">
<div class="col-4">
<div id="simple-list-example" class="d-flex flex-column gap-2 simple-list-example-scrollspy text-center">
<a class="p-1 rounded" href="#simple-list-item-1">Item 1</a>
<a class="p-1 rounded" href="#simple-list-item-2">Item 2</a>
<a class="p-1 rounded" href="#simple-list-item-3">Item 3</a>
<a class="p-1 rounded" href="#simple-list-item-4">Item 4</a>
<a class="p-1 rounded" href="#simple-list-item-5">Item 5</a>
</div>
</div>
<div class="col-8">
<div data-bs-spy="scroll" data-bs-target="#simple-list-example" data-bs-offset="0" data-bs-smooth-scroll="true" class="scrollspy-example" tabindex="0">
<h4 id="simple-list-item-1">Item 1</h4>
<p>...</p>
<h4 id="simple-list-item-2">Item 2</h4>
<p>...</p>
<h4 id="simple-list-item-3">Item 3</h4>
<p>...</p>
<h4 id="simple-list-item-4">Item 4</h4>
<p>...</p>
<h4 id="simple-list-item-5">Item 5</h4>
<p>...</p>
</div>
</div>
</div>
غير نظر ايندڙ عناصر
ھدف وارا عنصر جيڪي نظر نه ايندا آھن نظر انداز ڪيا ويندا ۽ انھن سان لاڳاپيل نيوي شيون .active
ڪلاس حاصل نه ڪندا. اسڪراول اسپيس مثالن جي شروعات هڪ غير ڏسڻ واري لفافي ۾ ڪئي ويندي سڀني ٽارگيٽ عناصر کي نظر انداز ڪندي. مشاهدو عناصر جي جانچ ڪرڻ لاء طريقو استعمال ڪريو refresh
هڪ ڀيرو لفافي نظر اچي ٿي.
document.querySelectorAll('#nav-tab>[data-bs-toggle="tab"]').forEach(el => {
el.addEventListener('shown.bs.tab', () => {
const target = el.getAttribute('data-bs-target')
const scrollElem = document.querySelector(`${target} [data-bs-spy="scroll"]`)
bootstrap.ScrollSpy.getOrCreateInstance(scrollElem).refresh()
})
})
استعمال
ڊيٽا خاصيتن جي ذريعي
آساني سان شامل ڪرڻ لاءِ scrollspy رويي کي پنھنجي ٽاپبار نيويگيشن ۾، data-bs-spy="scroll"
ان عنصر ۾ شامل ڪريو جنھن تي توھان جاسوسي ڪرڻ چاھيو ٿا (اڪثر عام طور تي اھو ھوندو <body>
). پوء ڪنهن به بوٽ اسٽريپ جزو جي والدين عنصر جي يا طبقي جي نالي data-bs-target
سان وصف شامل ڪريو.id
.nav
<body data-bs-spy="scroll" data-bs-target="#navbar-example">
...
<div id="navbar-example">
<ul class="nav nav-tabs" role="tablist">
...
</ul>
</div>
...
</body>
جاوا اسڪرپٽ ذريعي
const scrollSpy = new bootstrap.ScrollSpy(document.body, {
target: '#navbar-example'
})
اختيارن
جيئن ته اختيارن کي ڊيٽا انتساب يا جاوا اسڪرپٽ ذريعي منتقل ڪري سگھجي ٿو، توھان ھڪڙي اختيار جو نالو شامل ڪري سگھو ٿا data-bs-
، جيئن data-bs-animation="{value}"
. ڊيٽا جي خاصيتن ذريعي اختيارن کي پاس ڪرڻ وقت اختياري جي صورت واري قسم کي تبديل ڪرڻ جي پڪ ڪريو ”ڪيم ڪيس“ مان ” ڪباب ڪيس “. مثال طور، data-bs-custom-class="beautifier"
جي بدران استعمال ڪريو data-bs-customClass="beautifier"
.
Bootstrap 5.2.0 جي طور تي، سڀئي جزا هڪ تجرباتي محفوظ ڪيل ڊيٽا جي خاصيت کي سپورٽ ڪن data-bs-config
ٿا جيڪي JSON اسٽرنگ جي طور تي سادي جزو جي جوڙجڪ کي گھرائي سگھن ٿا. جڏهن هڪ عنصر آهي data-bs-config='{"delay":0, "title":123}'
۽ data-bs-title="456"
خاصيتون آهن، حتمي title
قيمت هوندي 456
۽ الڳ الڳ ڊيٽا خاصيتون ڏنل قدرن کي ختم ڪري ڇڏيندو data-bs-config
. ان کان علاوه، موجوده ڊيٽا جون خاصيتون JSON قدرن کي گھرائڻ جي قابل آھن جھڙوڪ data-bs-delay='{"show":0,"hide":150}'
.
نالو | قسم | ڊفالٽ | وصف |
---|---|---|---|
rootMargin |
تار | 0px 0px -25% |
چونڪ مبصر روٽ مارجن صحيح يونٽ، جڏهن حساب ڪتاب اسڪرول پوزيشن. |
smoothScroll |
بولين | false |
هموار اسڪرولنگ کي فعال ڪري ٿو جڏهن صارف هڪ لنڪ تي ڪلڪ ڪري ٿو جيڪو اسڪرول اسپي جي مشاهدي جي حوالي ڪري ٿو. |
target |
string، DOM عنصر | null |
Scrollspy پلگ ان لاڳو ڪرڻ لاء عنصر بيان ڪري ٿو. |
threshold |
صف | [0.1, 0.5, 1] |
IntersectionObserver threshold valid input, when calculating scroll position. |
ختم ٿيل اختيارن
v5.1.3 تائين اسان offset
& method
آپشنز استعمال ڪري رهيا هئاسين، جن کي هاڻي ختم ڪيو ويو آهي ۽ ان سان تبديل ڪيو ويو آهي rootMargin
. پسمانده مطابقت برقرار رکڻ لاءِ، اسان کي ڏنل کي پارس ڪرڻ جاري offset
رکنداسين rootMargin
، پر ھن خصوصيت کي v6 ۾ ختم ڪيو ويندو .
طريقا
طريقو | وصف |
---|---|
dispose |
هڪ عنصر جي scrollspy کي تباهه ڪري ٿو. (ڊوم عنصر تي ذخيرو ٿيل ڊيٽا کي هٽائي ٿو) |
getInstance |
جامد طريقو هڪ DOM عنصر سان لاڳاپيل scrollspy مثال حاصل ڪرڻ لاء. |
getOrCreateInstance |
جامد طريقو هڪ DOM عنصر سان لاڳاپيل scrollspy مثال حاصل ڪرڻ لاء، يا هڪ نئين ٺاهڻ جي صورت ۾ ان جي شروعات نه ڪئي وئي هئي. |
refresh |
جڏهن DOM ۾ عناصر شامل ڪرڻ يا ختم ڪرڻ، توهان کي ريفريش طريقي کي ڪال ڪرڻ جي ضرورت پوندي. |
هتي ريفريش طريقو استعمال ڪندي هڪ مثال آهي:
const dataSpyList = document.querySelectorAll('[data-bs-spy="scroll"]')
dataSpyList.forEach(dataSpyEl => {
bootstrap.ScrollSpy.getInstance(dataSpyEl).refresh()
})
واقعا
واقعو | وصف |
---|---|
activate.bs.scrollspy |
اهو واقعو اسڪرول عنصر تي فائر ڪندو آهي جڏهن به هڪ لنگر اسڪرول اسپي طرفان چالو ڪيو ويندو آهي. |
const firstScrollSpyEl = document.querySelector('[data-bs-spy="scroll"]')
firstScrollSpyEl.addEventListener('activate.bs.scrollspy', () => {
// do something...
})