
جلسه چهل و دوم از دوره آموزش Bootstrap : پلاگین Collapse
پلاگین Collapse
پلاگین های بوت استرپ
پلاگین collapse باعث ایجاد راحت تر تقسیمات collapse در صفحه می شود. این که آیا ما از آن برای ساخت accordion navigation استفاده می کنیم یا برای ایجاد کادرهای متن (text box) فرقی نمی کند ، در هر صورت این پلاگین آپشن های محتوایی بسیاری را در اختیار ما قرار می دهد.
اگر بخواهیم که این پلاگین را به صورت جداگانه وارد کنیم ، در این صورت به فایل collapse.js نیاز خواهیم داشت. در غیر این صورت ، همان طور که در مقاله "مروری بر پلاگین های بوت استرپ" ذکر شد ، می توانیم از یکی از فایل های bootstrap.js یا bootstrap min.js.min.js استفاده نماییم.
نحوه کاربرد
ما می توانیم پلاگین collapse را در موارد زیر استفاده نماییم :
- برای ایجاد گروه های قابل collapse یا accordion . این کار را می توانیم همانند مثال زیر انجام دهیم :
<div class = "panel-group" id = "accordion">
<div class = "panel panel-default">
<div class = "panel-heading">
<h4 class = "panel-title">
<a data-toggle = "collapse" data-parent = "#accordion" href = "#collapseOne">
Click me to expand. Click me again to collapse.Section 1
</a>
</h4>
</div>
<div id = "collapseOne" class = "panel-collapse collapse in">
<div class = "panel-body">
Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred
nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo.
</div>
</div>
</div>
<div class = "panel panel-default">
<div class = "panel-heading">
<h4 class = "panel-title">
<a data-toggle = "collapse" data-parent = "#accordion" href = "#collapseTwo">
Click me to expand. Click me again to collapse.Section 2
</a>
</h4>
</div>
<div id = "collapseTwo" class = "panel-collapse collapse">
<div class = "panel-body">
Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt
sapiente ea proident. Ad vegan excepteur butcher vice lomo.
</div>
</div>
</div>
<div class = "panel panel-default">
<div class = "panel-heading">
<h4 class = "panel-title">
<a data-toggle = "collapse" data-parent = "#accordion" href = "#collapseThree">
Click me to expand. Click me again to collapse.Section 3
</a>
</h4>
</div>
<div id = "collapseThree" class = "panel-collapse collapse">
<div class = "panel-body">
Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt
sapiente ea proident. Ad vegan excepteur butcher vice lomo.
</div>
</div>
</div>
</div>
- "Data-toggle = “collapse به لینکی که ما برای باز کردن یا بستن مؤلفه کلیک می کنیم ، اضافه می شود.
- Href یا یک ویژگی data-target به مؤلفه والد اضافه می شود که مقدار آن id مؤلفه فرزند می باشد.
- ویژگی Data-parent برای ایجاد accordion مانند افکت اضافه می شود.
خروجی قطعه کد فوق به صورت زیر می باشد :
برای ایجاد collapse ساده بدون نشانه گذاری accordion : این کار را می توانیم مطابق مثال زیر انجام دهیم :
<button type = "button" class = "btn btn-primary" data-toggle = "collapse" data-target = "#demo">
simple collapsible
</button>
<div id = "demo" class = "collapse in">
Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt
sapiente ea proident. Ad vegan excepteur butcher vice lomo.
</div>
همان طور که در مثال فوق مشاهده می کنیم ، ما یک مؤلفه قابل collapse ساده ایجاد کردیم ، بر خلاف accordion ، ما ویژگی data-parent را اضافه نکردیم.
خروجی قطعه کد فوق به صورت زیر می باشد :
کاربرد
جدول زیر فهرستی از کلاس هایی که پلاگین collapse از آنها برای هندل کردن اقدامات استفاده می نماید ، آورده شده است.
کلاس |
توضیحات |
.collapse |
محتوا را مخفی می کند. |
.collapse.in |
محتوا را نشان می دهد. |
collapsing |
زمانی اضافه می شود که انتقال شروع می شود و زمانی حذف می شود که انتقال به اتمام برسد. |
ما می توانیم به دو روش زیر پلاگین collapse را استفاده نماییم :
- از طریق ویژگی های داده : مقدار "data-toggle = "collapse و یک data-target را به عنصر اضافه می کنیم تا به طور خودکار کنترل را به یک عنصر قابل collapse اختصاص دهد. ویژگی data-target یک CSS selector را برای اعمال collapse قبول خواهد کرد. از افزودن کلاس .collapse به عنصر قابل collapse اطمینان حاصل می کنیم. اگر بخواهیم آن را به طور پیش فرض باز کنیم ، کلاس اضافی .in را نیز وارد می کنیم.
برای افزودن مدیریت گروه accoridion به یک کنترل collapse ، ویژگی داده "data-parent = “#selector را اضافه می کنیم.
- از طریق جاوا اسکریپت : متد collapse می تواند با جاوا اسکریپت به ترتیبی که در زیر نشان داده شده است ، فعال شود.
$('.collapse').collapse()
آپشن ها
آپشن های مشخصی وجود دارند که می توانند از طریق جاوا اسکریپت با ویژگی داده انتقال داده شوند. فهرست این آپشن ها در جدول زیر ارائه شده است :
نام آپشن |
نوع/ مقدار پیش فرض |
نام ویژگی داده |
توضیحات |
parent |
selector Default − false |
data-parent |
اگر مقدار selector به صورت false باشد ، تمام عناصر قابل collapse تحت والد مشخص شده بسته می شوند (شبیه به رفتار آکاردئون سنتی - این کار به کلاس گروه آکاردئون بستگی دارد). |
toggle |
boolean Default − true |
data-toggle |
عنصر قابل collapse در فراخوانی را تغییر می دهد. |
متدها
در ادامه برخی از متدای کاربردی که با عناصر قابل collapse کار می کنند ، آورده شده است :
متد |
توضیحات |
مثال |
Options − .collapse(options) |
محتوای ما را به عنوان یک عنصر قابل collapse فعال می کند. یک شیء با آپشن های اختیاری را قبول می کند. |
$('#identifier').collapse({
toggle: false
})
|
Toggle − .collapse('toggle') |
یک عنصر قابل collapse را نمایش داده یا پنهان می کند. |
$('#identifier').collapse('toggle')
|
Show − .collapse('show') |
یک عنصر قابل collapse را نمایش می دهد. |
$('#identifier').collapse('show')
|
Hide − .collapse('hide') |
یک عنصر قابل collapse را پنهان می دهد. |
$('#identifier').collapse('hide')
|
مثال
مثال زیر ، نحوه کاربرد متدهای فوق را نشان می دهد :
<div class = "panel-group" id = "accordion">
<div class = "panel panel-default">
<div class = "panel-heading">
<h4 class = "panel-title">
<a data-toggle = "collapse" data-parent = "#accordion" href = "#collapseOne">
Click me to expand. Click me again to collapse. Section 1--hide method
</a>
</h4>
</div>
<div id = "collapseOne" class = "panel-collapse collapse in">
<div class = "panel-body">
Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt
sapiente ea proident. Ad vegan excepteur butcher vice lomo.
</div>
</div>
</div>
<div class = "panel panel-success">
<div class = "panel-heading">
<h4 class = "panel-title">
<a data-toggle = "collapse" data-parent = "#accordion" href = "#collapseTwo">
Click me to expand. Click me again to collapse. Section 2--show method
</a>
</h4>
</div>
<div id = "collapseTwo" class = "panel-collapse collapse">
<div class = "panel-body">
Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt
sapiente ea proident. Ad vegan excepteur butcher vice lomo.
</div>
</div>
</div>
<div class = "panel panel-info">
<div class = "panel-heading">
<h4 class = "panel-title">
<a data-toggle = "collapse" data-parent = "#accordion" href = "#collapseThree">
Click me to expand. Click me again to collapse. Section 3--toggle method
</a>
</h4>
</div>
<div id = "collapseThree" class = "panel-collapse collapse">
<div class = "panel-body">
Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt
sapiente ea proident. Ad vegan excepteur butcher vice lomo.
</div>
</div>
</div>
<div class = "panel panel-warning">
<div class = "panel-heading">
<h4 class = "panel-title">
<a data-toggle = "collapse" data-parent = "#accordion" href = "#collapseFour">
Click me to expand. Click me again to collapse. Section 4--options method
</a>
</h4>
</div>
<div id = "collapseFour" class = "panel-collapse collapse">
<div class = "panel-body">
Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt
sapiente ea proident. Ad vegan excepteur butcher vice lomo.
</div>
</div>
</div>
</div>
<script type = "text/javascript">
$(function () { $('#collapseFour').collapse({
toggle: false
})});
$(function () { $('#collapseTwo').collapse('show')});
$(function () { $('#collapseThree').collapse('toggle')});
$(function () { $('#collapseOne').collapse('hide')});
</script>
خروجی قطعه کد فوق به صورت زیر می باشد :
رویدادها
در جدول زیر فهرستی از رویدادهایی که می توانند با قابلیت collapse مورد استفاده قرار گیرند ، آورده شده است :
رویداد |
توضیحات |
مثال |
show.bs.collapse |
بعد از فراخوانی متد show به کار می افتد. |
$('#identifier').on('show.bs.collapse', function () {
// do something
})
|
shown.bs.collapse |
این رویداد هنگامی یک عنصر collapse برای کاربر قابل مشاهده است ، به کار می افتد. (برای تکمیل.انتقال CSS منتظر خواهد ماند.) |
$('#identifier').on('shown.bs.collapse', function () {
// do something
})
|
hide.bs.collapse |
هنگامی که متد نمونه hide فراخوانی می شود ، به کار می افتد. |
$('#identifier').on('hide.bs.collapse', function () {
// do something
})
|
hidden.bs.collapse
|
این رویداد هنگامی یک عنصر collapse برای کاربر پنهان می شود ، به کار می افتد. (برای تکمیل.انتقال CSS منتظر خواهد ماند.) |
$('#identifier').on('hidden.bs.collapse', function () {
// do something
})
|
مثال
مثال زیر ، نحوه کاربرد رویدادهای فوق را نشان می دهد :
<div class = "panel-group" id = "accordion">
<div class = "panel panel-info">
<div class = "panel-heading">
<h4 class = "panel-title">
<a data-toggle = "collapse" data-parent = "#accordion" href = "#collapseexample">
Click me to expand. Click me again to collapse. Section --shown event
</a>
</h4>
</div>
<div id = "collapseexample" class = "panel-collapse collapse">
<div class = "panel-body">
Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt
sapiente ea proident. Ad vegan excepteur butcher vice lomo.
</div>
</div>
</div>
</div>
<script type = "text/javascript">
$(function () {
$('#collapseexample').on('show.bs.collapse', function () {
alert('Hey, this alert shows up when you expand it');
})
});
</script>
خروجی قطعه کد فوق به صورت زیر می باشد :
این فصل در یک نگاه:
در این فصل پس از بررسی سیستم مسیریابی و طراحی صفحه نمایش ویدیو ها، به سراغ پنل کاربری خواهیم رفت و مباحث Model Binding و…
توجه: این دوره آموزشی به صورت پیوسته بر اساس آخرین نسخه ی ASP.NET Core بروزرسانی خواهد شد. آموزش صفر تا صد طراحی سایت اشتراک ویدیو مشابه آپارات با استفاده از ASP.NET CORE MVC 3.0 و V…این فصل در یک نگاه:
…
توضیحات کلی مجموعه: در این مجموعه آموزشی، با استفاده از جدیدترین تکنولوژی ها و ابزار های مایکروسافت (دات نت)، به یک پروژه جذاب مدیریت آگهی مشابه دیوار می پردازیم. این آموزش در دو بخش کلی و…این فصل در یک نگاه:
مباحث ریسپانسیو سازی شامل نقاط شکست مختلف - گرید سیستم - فلکس باکس - …
توجه : این دوره هیچ پیش نیازی ندارد و تمام مطالب از صفر آموزش داده شده است. از این رو شما برای شروع این دوره به هیچ مقدمه یا دوره دیگری نیاز ندارید. ویژگی های دوره آموزش بوت استرپ ۵ : - آم…این فصل در یک نگاه:
فصل ششم: پروژهپروژه ا : ساخت یک قالب واکنشگرای گروه موسیقیپروژه 2 : ساخت قالب واکنشگرای سایت 5040…
سرفصل دوره آموزش فریم ورک بوت استرپ فصل اول : معرفی بوت استرپ طراحی واکنشگرا ( Responsive Design ) چیست ؟ با مفهوم طراحی واکنشگرا آشنا خواهید شد و تفاوت بین سایت واکنشگرا و سایت نسخه ی …این فصل در یک نگاه:
…
در این دوره آموزشی، وبسایت ورزش3 را با استفاده از ASP.NET Core پیاده سازی می کنیم و همچنین اپ اندروید آن را هم با Xamarin متصل به سرور سایت طراحی و در نهایت نحوه انتشار آن در مارکت هایی مثل …این فصل در یک نگاه:
طراحی پنل مدیریت(دسته بندی)- دسته بندی یا category - نمایش دسته های فرعی در view با ورود به یکی از دسته های اصلی و آشن…
توضیحات کلی مجموعه: این مجموعه توسط فریمورک محبوب و دوست داشتنی bootstrap و به صورت تضمینی و صفر تا صد جهت یادگیری کارآموزان عزیز ارائه گردیده و دوستانی که این دوره را به طور کامل و دقیق…این فصل در یک نگاه:
ایجاد پروژه آژانس مسافرتی.....…
فصل اول: آشنایی با مبانی برنامه نویسی اندروید آشنایی با معماری برنامه های اندرویدی ساخت شبیه ساز جهت تست پروژه اندروید آشنایی با دستور Toast و حلقه for در برنامه های اندروی…این فصل در یک نگاه:
بهترین و پر بازده ترین روش تبدیل بازدیدکننده سایت به مشتری تبلیغات هدفمند و برند سازی هوشمندانه با ایمیل می باشد. ایمیل…
وبینار(سمینار آنلاین) آموزش تکنیک های ایمیل مارکتینگ اگر تا انتها این متن را مطالعه کنید نظر شما در مورد ایمیل مارکتینگ 180 درجه عوض می شود!! بر هیچکس پوشیده نیست که از سال 1972 که ای…این فصل در یک نگاه:
مباحث تکمیلی فریم ورک لاراول…
فصل اول :آموزش مقدماتی فریم ورک لاراول معرفی فریم ورک لاراول و پیشنیازهای انجام کار انجام کانفیگ های اولیه برای نصب و راه اندازی فریم ورک معرفی روش های نصب پروژه لاراولی از طریق سایت گی…این فصل در یک نگاه:
مباحث مقدماتی فریم ورک react.js…
توضیحات کلی مجموعه: فصل اول : آشنایی با مباحث مقدماتی فریم ورک react.js نصب و راه اندازی node.js و کلیه پیش نیازهای لازم نصب فریم ورک react روی لوکال و انجام تست های لازم آغاز آشنایی …