វង់
សមាសធាតុបញ្ចាំងស្លាយសម្រាប់ការជិះកង់តាមធាតុ—រូបភាព ឬស្លាយនៃអត្ថបទ—ដូចជារង្វង់មូល។
របៀបដែលវាដំណើរការ
រង្វង់មូលគឺជាការបញ្ចាំងស្លាយសម្រាប់ជិះកង់តាមរយៈខ្លឹមសារជាបន្តបន្ទាប់ ដែលបង្កើតឡើងជាមួយនឹងការបំប្លែង CSS 3D និង JavaScript បន្តិច។ វាដំណើរការជាមួយស៊េរីរូបភាព អត្ថបទ ឬការសម្គាល់ផ្ទាល់ខ្លួន។ វាក៏រួមបញ្ចូលការគាំទ្រសម្រាប់ការត្រួតពិនិត្យពីមុន/បន្ទាប់ និងសូចនាករផងដែរ។
នៅក្នុងកម្មវិធីរុករកតាមអ៊ីនធឺណិតដែល API លទ្ធភាពមើលឃើញទំព័រ ត្រូវបានគាំទ្រ រង្វង់នឹងជៀសវាងការរអិលនៅពេលដែលគេហទំព័រមិនអាចមើលឃើញដោយអ្នកប្រើប្រាស់ (ដូចជានៅពេលដែលផ្ទាំងកម្មវិធីរុករកមិនដំណើរការ បង្អួចកម្មវិធីរុករកត្រូវបានបង្រួមអប្បបរមា។ល។)។
prefers-reduced-motion
សំណួរមេឌៀ។ សូមមើល
ផ្នែកចលនាដែលបានកាត់បន្ថយនៃឯកសារភាពងាយស្រួលរបស់យើង ។
សូមដឹងថា រង្វង់មូលមិនត្រូវបានគាំទ្រទេ ហើយរង្វង់មូលមិនត្រូវបានអនុលោមតាមស្តង់ដារលទ្ធភាពប្រើប្រាស់ទេ។
ជាចុងក្រោយ ប្រសិនបើអ្នកកំពុងបង្កើត JavaScript របស់យើងពីប្រភព វា ទាមទារutil.js
.
ឧទាហរណ៍
Carousels មិនធ្វើឱ្យទំហំស្លាយធម្មតាដោយស្វ័យប្រវត្តិទេ។ ដូចនេះ អ្នកប្រហែលជាត្រូវប្រើឧបករណ៍ប្រើប្រាស់បន្ថែម ឬរចនាប័ទ្មផ្ទាល់ខ្លួន ដើម្បីទំហំមាតិកាសមស្រប។ ខណៈពេលដែល carousels គាំទ្រការគ្រប់គ្រង និងសូចនាករពីមុន/បន្ទាប់ ពួកវាមិនត្រូវបានទាមទារច្បាស់លាស់ទេ។ បន្ថែម និងប្ដូរតាមបំណងតាមដែលអ្នកឃើញសម។
ថ្នាក់ .active
ត្រូវបន្ថែមទៅស្លាយមួយ បើមិនដូច្នេះទេ រង្វង់នឹងមើលមិនឃើញទេ។ ត្រូវប្រាកដថាកំណត់លក្ខណៈពិសេសតែមួយគត់ សម្រាប់ការគ្រប់គ្រង id
ជា .carousel
ជម្រើស ជាពិសេសប្រសិនបើអ្នកកំពុងប្រើរង្វង់មូលច្រើននៅលើទំព័រតែមួយ។ ធាតុត្រួតពិនិត្យ និងសូចនាករត្រូវតែមាន data-target
គុណលក្ខណៈ (ឬ href
សម្រាប់តំណភ្ជាប់) ដែលផ្គូផ្គង ធាតុ id
នៃ .carousel
ធាតុ។
ស្លាយតែប៉ុណ្ណោះ
នេះជារង្វង់មូលដែលមានស្លាយប៉ុណ្ណោះ។ ចំណាំវត្តមានរបស់រូបភាព .d-block
និង .w-100
នៅលើរង្វង់មូល ដើម្បីការពារការតម្រឹមរូបភាពលំនាំដើមរបស់កម្មវិធីរុករកតាមអ៊ីនធឺណិត។
<div id="carouselExampleSlidesOnly" class="carousel slide" data-ride="carousel">
<div class="carousel-inner">
<div class="carousel-item active">
<img src="..." class="d-block w-100" alt="...">
</div>
<div class="carousel-item">
<img src="..." class="d-block w-100" alt="...">
</div>
<div class="carousel-item">
<img src="..." class="d-block w-100" alt="...">
</div>
</div>
</div>
ជាមួយនឹងការគ្រប់គ្រង
ការបន្ថែមនៅក្នុងការគ្រប់គ្រងពីមុន និងបន្ទាប់។ យើងសូមណែនាំឱ្យប្រើ <button>
ធាតុ ប៉ុន្តែអ្នកក៏អាចប្រើ <a>
ធាតុជាមួយ role="button"
.
<div id="carouselExampleControls" class="carousel slide" data-ride="carousel">
<div class="carousel-inner">
<div class="carousel-item active">
<img src="..." class="d-block w-100" alt="...">
</div>
<div class="carousel-item">
<img src="..." class="d-block w-100" alt="...">
</div>
<div class="carousel-item">
<img src="..." class="d-block w-100" alt="...">
</div>
</div>
<button class="carousel-control-prev" type="button" data-target="#carouselExampleControls" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-target="#carouselExampleControls" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</button>
</div>
ជាមួយនឹងសូចនាករ
អ្នកក៏អាចបន្ថែមសូចនាករទៅរង្វង់មូល រួមជាមួយនឹងវត្ថុបញ្ជាផងដែរ។
<div id="carouselExampleIndicators" class="carousel slide" data-ride="carousel">
<ol class="carousel-indicators">
<li data-target="#carouselExampleIndicators" data-slide-to="0" class="active"></li>
<li data-target="#carouselExampleIndicators" data-slide-to="1"></li>
<li data-target="#carouselExampleIndicators" data-slide-to="2"></li>
</ol>
<div class="carousel-inner">
<div class="carousel-item active">
<img src="..." class="d-block w-100" alt="...">
</div>
<div class="carousel-item">
<img src="..." class="d-block w-100" alt="...">
</div>
<div class="carousel-item">
<img src="..." class="d-block w-100" alt="...">
</div>
</div>
<button class="carousel-control-prev" type="button" data-target="#carouselExampleIndicators" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-target="#carouselExampleIndicators" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</button>
</div>
ជាមួយនឹងចំណងជើង
បន្ថែមចំណងជើងទៅស្លាយរបស់អ្នកយ៉ាងងាយស្រួលជាមួយនឹង .carousel-caption
ធាតុនៅក្នុងណាមួយ .carousel-item
។ ពួកវាអាចលាក់បានយ៉ាងងាយស្រួលនៅលើច្រកចូលមើលតូចៗ ដូចបានបង្ហាញខាងក្រោម ជាមួយនឹង ឧបករណ៍ប្រើប្រាស់បង្ហាញ ស្រេចចិត្ត ។ យើងលាក់ពួកវាពីដំបូងជាមួយ .d-none
និងនាំពួកគេមកវិញនៅលើឧបករណ៍ទំហំមធ្យមជាមួយ .d-md-block
.
<div id="carouselExampleCaptions" class="carousel slide" data-ride="carousel">
<ol class="carousel-indicators">
<li data-target="#carouselExampleCaptions" data-slide-to="0" class="active"></li>
<li data-target="#carouselExampleCaptions" data-slide-to="1"></li>
<li data-target="#carouselExampleCaptions" data-slide-to="2"></li>
</ol>
<div class="carousel-inner">
<div class="carousel-item active">
<img src="..." class="d-block w-100" alt="...">
<div class="carousel-caption d-none d-md-block">
<h5>First slide label</h5>
<p>Some representative placeholder content for the first slide.</p>
</div>
</div>
<div class="carousel-item">
<img src="..." class="d-block w-100" alt="...">
<div class="carousel-caption d-none d-md-block">
<h5>Second slide label</h5>
<p>Some representative placeholder content for the second slide.</p>
</div>
</div>
<div class="carousel-item">
<img src="..." class="d-block w-100" alt="...">
<div class="carousel-caption d-none d-md-block">
<h5>Third slide label</h5>
<p>Some representative placeholder content for the third slide.</p>
</div>
</div>
</div>
<button class="carousel-control-prev" type="button" data-target="#carouselExampleCaptions" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-target="#carouselExampleCaptions" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</button>
</div>
ខ្វែង
បន្ថែម .carousel-fade
ទៅរង្វង់មូលរបស់អ្នកដើម្បីធ្វើឱ្យស្លាយមានចលនាជាមួយនឹងការផ្លាស់ប្តូរបន្ថយជាជាងស្លាយ។ អាស្រ័យលើខ្លឹមសាររង្វង់មូលរបស់អ្នក (ឧ. អត្ថបទសម្រាប់តែស្លាយ) អ្នកប្រហែលជាចង់បន្ថែម .bg-body
ឬ CSS ផ្ទាល់ខ្លួនខ្លះទៅ .carousel-item
s សម្រាប់ការកាត់ឱ្យបានត្រឹមត្រូវ។
<div id="carouselExampleFade" class="carousel slide carousel-fade" data-ride="carousel">
<div class="carousel-inner">
<div class="carousel-item active">
<img src="..." class="d-block w-100" alt="...">
</div>
<div class="carousel-item">
<img src="..." class="d-block w-100" alt="...">
</div>
<div class="carousel-item">
<img src="..." class="d-block w-100" alt="...">
</div>
</div>
<button class="carousel-control-prev" type="button" data-target="#carouselExampleFade" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-target="#carouselExampleFade" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</button>
</div>
.carousel-item
ចន្លោះពេល បុគ្គល
បន្ថែម data-interval=""
ទៅ a .carousel-item
ដើម្បីផ្លាស់ប្តូរចំនួនពេលវេលាដើម្បីពន្យាពេលរវាងការជិះកង់ដោយស្វ័យប្រវត្តិទៅធាតុបន្ទាប់។
<div id="carouselExampleInterval" class="carousel slide" data-ride="carousel">
<div class="carousel-inner">
<div class="carousel-item active" data-interval="10000">
<img src="..." class="d-block w-100" alt="...">
</div>
<div class="carousel-item" data-interval="2000">
<img src="..." class="d-block w-100" alt="...">
</div>
<div class="carousel-item">
<img src="..." class="d-block w-100" alt="...">
</div>
</div>
<button class="carousel-control-prev" type="button" data-target="#carouselExampleInterval" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-target="#carouselExampleInterval" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</button>
</div>
បិទការអូសដោយប៉ះ
Carousels គាំទ្រការអូសទៅឆ្វេង/ស្តាំនៅលើឧបករណ៍ touchscreen ដើម្បីផ្លាស់ទីរវាងស្លាយ។ វាអាចត្រូវបានបិទដោយប្រើ data-touch
គុណលក្ខណៈ។ ឧទាហរណ៍ខាងក្រោមក៏មិនរួមបញ្ចូល data-ride
គុណលក្ខណៈដែរ ហើយ data-interval="false"
ដូច្នេះវាមិនលេងដោយស្វ័យប្រវត្តិទេ។
<div id="carouselExampleControlsNoTouching" class="carousel slide" data-touch="false" data-interval="false">
<div class="carousel-inner">
<div class="carousel-item active">
<img src="..." class="d-block w-100" alt="...">
</div>
<div class="carousel-item">
<img src="..." class="d-block w-100" alt="...">
</div>
<div class="carousel-item">
<img src="..." class="d-block w-100" alt="...">
</div>
</div>
<button class="carousel-control-prev" type="button" data-target="#carouselExampleControlsNoTouching" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-target="#carouselExampleControlsNoTouching" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</button>
</div>
ការប្រើប្រាស់
តាមរយៈគុណលក្ខណៈទិន្នន័យ
ប្រើគុណលក្ខណៈទិន្នន័យ ដើម្បីងាយស្រួលគ្រប់គ្រងទីតាំងរបស់រង្វង់មូល។ data-slide
ទទួលយកពាក្យគន្លឹះ prev
ឬ next
ដែលផ្លាស់ប្តូរទីតាំងស្លាយទាក់ទងទៅនឹងទីតាំងបច្ចុប្បន្នរបស់វា។ ម៉្យាងទៀត ប្រើ data-slide-to
ដើម្បីបញ្ជូនសន្ទស្សន៍ស្លាយឆៅទៅរង្វង់មូល data-slide-to="2"
ដែលផ្លាស់ប្តូរទីតាំងស្លាយទៅសន្ទស្សន៍ជាក់លាក់ដែលចាប់ផ្តើមដោយ 0
.
គុណលក្ខណៈ data-ride="carousel"
ត្រូវបានប្រើដើម្បីសម្គាល់រង្វង់មូលថាជាចលនាចាប់ផ្តើមនៅពេលផ្ទុកទំព័រ។ ប្រសិនបើអ្នកមិនប្រើ data-ride="carousel"
ដើម្បីចាប់ផ្តើមរង្វង់របស់អ្នកទេ អ្នកត្រូវតែចាប់ផ្តើមវាដោយខ្លួនឯង។ វាមិនអាចប្រើរួមជាមួយនឹង (លែងត្រូវការតទៅទៀត និងមិនចាំបាច់) ការចាប់ផ្តើម JavaScript ច្បាស់លាស់នៃរង្វង់មូលដូចគ្នា។
តាមរយៈ JavaScript
ហៅទូរសព្ទទៅរង្វង់ដោយដៃដោយប្រើ៖
$('.carousel').carousel()
ជម្រើស
ជម្រើសអាចត្រូវបានឆ្លងកាត់តាមរយៈគុណលក្ខណៈទិន្នន័យ ឬ JavaScript ។ សម្រាប់គុណលក្ខណៈទិន្នន័យ សូមបន្ថែមឈ្មោះជម្រើសទៅ data-
ដូចក្នុង data-interval=""
.
ឈ្មោះ | ប្រភេទ | លំនាំដើម | ការពិពណ៌នា |
---|---|---|---|
ចន្លោះពេល | ចំនួន | ៥០០០ | ចំនួនពេលវេលាដើម្បីពន្យាពេលរវាងការជិះកង់ដោយស្វ័យប្រវត្តិនូវវត្ថុមួយ។ ប្រសិនបើ false , carousel នឹងមិនវិលដោយស្វ័យប្រវត្តិទេ។ |
ក្តារចុច | ប៊ូលីន | ពិត | ថាតើរង្វង់គួរមានប្រតិកម្មចំពោះព្រឹត្តិការណ៍ក្តារចុចដែរឬទេ។ |
ផ្អាក | ខ្សែអក្សរ | ប៊ូលីន | 'លោត' | ប្រសិនបើកំណត់ទៅ នៅលើឧបករណ៍ដែលបើកការប៉ះ នៅពេលកំណត់ទៅ |
ជិះ | ខ្សែអក្សរ | មិនពិត | លេងរង្វង់ដោយស្វ័យប្រវត្តិបន្ទាប់ពីអ្នកប្រើបង្វិលធាតុដំបូងដោយដៃ។ ប្រសិនបើកំណត់ទៅ 'carousel' នោះនឹងលេងរង្វង់ដោយស្វ័យប្រវត្តិនៅពេលផ្ទុក។ |
រុំ | ប៊ូលីន | ពិត | ថាតើរង្វង់មូលគួរធ្វើចលនាបន្ត ឬមានការឈប់ពិបាក។ |
ប៉ះ | ប៊ូលីន | ពិត | ថាតើរង្វង់មូលគួរគាំទ្រអន្តរកម្មអូសទៅឆ្វេង/ស្តាំនៅលើឧបករណ៍អេក្រង់ប៉ះឬអត់។ |
វិធីសាស្រ្ត
វិធីសាស្រ្ត និងការផ្លាស់ប្តូរអសមកាល
វិធីសាស្រ្ត API ទាំងអស់គឺ អសមកាល ហើយចាប់ផ្តើមការ ផ្លាស់ប្តូរ ។ ពួកគេត្រឡប់ទៅអ្នកហៅចូលវិញភ្លាមៗ នៅពេលដែលការផ្លាស់ប្តូរត្រូវបានចាប់ផ្តើម ប៉ុន្តែ មុនពេលវាបញ្ចប់ ។ លើសពីនេះទៀត ការហៅតាមវិធីសាស្ត្រលើ សមាសភាគអន្តរកាលនឹងត្រូវបានមិនអើពើ ។
.carousel(options)
ចាប់ផ្ដើមរង្វង់មូលជាមួយជម្រើសជាជម្រើស object
ហើយចាប់ផ្ដើមជិះកង់តាមធាតុ។
$('.carousel').carousel({
interval: 2000
})
.carousel('cycle')
ធ្វើរង្វង់តាមធាតុរង្វង់ពីឆ្វេងទៅស្តាំ។
.carousel('pause')
បញ្ឈប់រង្វង់មូលមិនឱ្យជិះកង់កាត់វត្ថុ។
.carousel(number)
បង្វិលរង្វង់ទៅស៊ុមជាក់លាក់មួយ (ដោយផ្អែក 0 ស្រដៀងនឹងអារេមួយ)។ ត្រឡប់ទៅកាន់អ្នកហៅចូល មុនពេលធាតុគោលដៅត្រូវបានបង្ហាញ (ឧ slid.bs.carousel
.
.carousel('prev')
រង្វង់ទៅធាតុមុន។ ត្រឡប់ទៅអ្នកហៅទូរស័ព្ទវិញ មុនពេលដែលធាតុមុនត្រូវបានបង្ហាញ (ឧ slid.bs.carousel
.
.carousel('next')
រង្វង់ទៅធាតុបន្ទាប់។ ត្រឡប់ទៅអ្នកហៅទូរស័ព្ទវិញ មុនពេលធាតុបន្ទាប់ត្រូវបានបង្ហាញ (ឧ slid.bs.carousel
.
.carousel('dispose')
បំផ្លាញរង្វង់នៃធាតុមួយ។
.carousel('nextWhenVisible')
កុំបង្វែររង្វង់ទៅបន្ទាប់ នៅពេលដែលទំព័រមើលមិនឃើញ ឬរង្វង់មូល ឬមេរបស់វាមើលមិនឃើញ។ ត្រឡប់ទៅអ្នកហៅទូរស័ព្ទវិញ មុនពេលធាតុបន្ទាប់ត្រូវបានបង្ហាញ (ឧ slid.bs.carousel
.
.carousel('to')
បង្វិលរង្វង់ទៅស៊ុមជាក់លាក់មួយ (ដោយផ្អែក 0 ស្រដៀងនឹងអារេមួយ)។ ត្រឡប់ទៅអ្នកហៅទូរស័ព្ទវិញ មុនពេលធាតុបន្ទាប់ត្រូវបានបង្ហាញ (ឧ slid.bs.carousel
.
ព្រឹត្តិការណ៍
ថ្នាក់ carousel របស់ Bootstrap លាតត្រដាងនូវព្រឹត្តិការណ៍ចំនួនពីរសម្រាប់ភ្ជាប់មុខងារ carousel ។ ព្រឹត្តិការណ៍ទាំងពីរមានលក្ខណៈសម្បត្តិបន្ថែមដូចខាងក្រោមៈ
direction
៖ ទិសដែលរង្វង់មូលកំពុងរអិល ("left"
ឬ"right"
)។relatedTarget
៖ ធាតុ DOM ដែលកំពុងត្រូវបានដាក់បញ្ចូលជាធាតុសកម្ម។from
៖ លិបិក្រមនៃធាតុបច្ចុប្បន្នto
៖ លិបិក្រមនៃធាតុបន្ទាប់
ព្រឹត្តិការណ៍ carousel ទាំងអស់ត្រូវបានបាញ់នៅ carousel ខ្លួនវា (ឧទាហរណ៍នៅ <div class="carousel">
) ។
ប្រភេទព្រឹត្តិការណ៍ | ការពិពណ៌នា |
---|---|
slide.bs.carousel | ព្រឹត្តិការណ៍នេះឆេះភ្លាមៗ នៅពេលដែល slide វិធីសាស្ត្រ instance ត្រូវបានហៅ។ |
slid.bs.carousel | ព្រឹត្តិការណ៍នេះត្រូវបានបញ្ឈប់នៅពេលដែលរង្វង់បានបញ្ចប់ការផ្លាស់ប្តូរស្លាយរបស់ខ្លួន។ |
$('#myCarousel').on('slide.bs.carousel', function () {
// do something...
})
ផ្លាស់ប្តូររយៈពេលផ្លាស់ប្តូរ
រយៈពេលនៃការផ្លាស់ប្តូរ .carousel-item
អាចត្រូវបានផ្លាស់ប្តូរជាមួយនឹង $carousel-transition
អថេរ Sass មុនពេលចងក្រង ឬរចនាប័ទ្មផ្ទាល់ខ្លួន ប្រសិនបើអ្នកកំពុងប្រើ CSS ដែលបានចងក្រង។ ប្រសិនបើការផ្លាស់ប្តូរច្រើនត្រូវបានអនុវត្ត ត្រូវប្រាកដថាការផ្លាស់ប្តូរការផ្លាស់ប្តូរត្រូវបានកំណត់ជាមុន (ឧ. transition: transform 2s ease, opacity .5s ease-out
)។