لائٹ باکسز، صارف کی اطلاعات، یا مکمل طور پر حسب ضرورت مواد کے لیے اپنی سائٹ پر ڈائیلاگ شامل کرنے کے لیے بوٹسٹریپ کا JavaScript موڈل پلگ ان استعمال کریں۔
یہ کیسے کام کرتا ہے
بوٹسٹریپ کے موڈل جزو کے ساتھ شروع کرنے سے پہلے، درج ذیل کو ضرور پڑھیں کیونکہ ہمارے مینو کے اختیارات حال ہی میں تبدیل ہوئے ہیں۔
ماڈلز HTML، CSS، اور JavaScript کے ساتھ بنائے گئے ہیں۔ وہ دستاویز میں موجود ہر چیز پر پوزیشن میں ہیں اور <body>اس کے بجائے اسکرول کو ہٹا دیں تاکہ موڈل مواد اسکرول کر سکے۔
موڈل "بیک ڈراپ" پر کلک کرنے سے موڈل خود بخود بند ہو جائے گا۔
بوٹسٹریپ ایک وقت میں صرف ایک موڈل ونڈو کو سپورٹ کرتا ہے۔ نیسٹڈ ماڈلز تعاون یافتہ نہیں ہیں کیونکہ ہمارا خیال ہے کہ وہ صارف کے ناقص تجربات ہیں۔
موڈلز استعمال کرتے ہیں position: fixed، جو کبھی کبھی اس کی رینڈرنگ کے بارے میں تھوڑا خاص ہو سکتا ہے۔ جب بھی ممکن ہو، دوسرے عناصر کی ممکنہ مداخلت سے بچنے کے لیے اپنے موڈل ایچ ٹی ایم ایل کو اعلیٰ سطح کی پوزیشن میں رکھیں۔ .modalکسی دوسرے مقررہ عنصر کے اندر گھونسلا بناتے وقت آپ کو ممکنہ طور پر مسائل کا سامنا کرنا پڑے گا ۔
HTML5 اپنے سیمنٹکس کی وضاحت کیسے کرتا ہے اس کی وجہ سے، HTML autofocusوصف کا بوٹسٹریپ موڈلز میں کوئی اثر نہیں ہوتا ہے۔ اسی اثر کو حاصل کرنے کے لیے، کچھ حسب ضرورت جاوا اسکرپٹ استعمال کریں:
ڈیمو اور استعمال کے رہنما خطوط کو پڑھتے رہیں۔
مثالیں
موڈل اجزاء
ذیل میں ایک جامد موڈل مثال ہے (جس کا مطلب ہے positionاور displayاسے اوور رائیڈ کر دیا گیا ہے)۔ موڈل ہیڈر، موڈل باڈی (ضروری ہے padding) اور موڈل فوٹر (اختیاری) شامل ہیں۔ ہم آپ سے مطالبہ کرتے ہیں کہ جب بھی ممکن ہو برخاست کرنے کی کارروائیوں کے ساتھ موڈل ہیڈرز شامل کریں، یا کوئی اور واضح برخاستگی کارروائی فراہم کریں۔
ماڈل ٹائٹل
موڈل باڈی ٹیکسٹ یہاں جاتا ہے۔
لائیو ڈیمو
نیچے دیئے گئے بٹن پر کلک کرکے ایک ورکنگ موڈل ڈیمو کو ٹوگل کریں۔ یہ صفحہ کے اوپری حصے سے نیچے پھسل جائے گا اور دھندلا جائے گا۔
Modal title
Woohoo, you're reading this text in a modal!
طویل مواد کو سکرول کرنا
جب موڈل صارف کے ویو پورٹ یا ڈیوائس کے لیے بہت لمبے ہو جاتے ہیں، تو وہ صفحہ سے آزاد اسکرول کرتے ہیں۔ ہمارا کیا مطلب ہے یہ دیکھنے کے لیے نیچے دیے گئے ڈیمو کو آزمائیں۔
Modal title
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
عمودی طور پر مرکز
عمودی طور پر موڈل کے درمیان میں شامل کریں .modal-dialog-centered۔.modal-dialog
Modal title
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
ٹول ٹپس اور پاپ اوور
ٹول ٹپس اور پاپ اوور کو ضرورت کے مطابق ماڈلز میں رکھا جا سکتا ہے۔ جب موڈلز بند ہو جاتے ہیں، تو اندر موجود کوئی بھی ٹول ٹپس اور پاپ اوور بھی خود بخود برخاست ہو جاتے ہیں۔
بوٹسٹریپ گرڈ سسٹم کو موڈل کے اندر اندر گھونسلہ بنا کر استعمال .container-fluidکریں .modal-body۔ پھر، عام گرڈ سسٹم کی کلاسز کا استعمال کریں جیسا کہ آپ کہیں اور کریں گے۔
ذیل میں ایک لائیو ڈیمو ہے جس کے بعد مثال HTML اور JavaScript ہے۔ مزید معلومات کے لیے، پر تفصیلات کے لیے موڈل ایونٹس کی دستاویزات پڑھیںrelatedTarget ۔
New message
<buttontype="button"class="btn btn-primary"data-toggle="modal"data-target="#exampleModal"data-whatever="@mdo">Open modal for @mdo</button><buttontype="button"class="btn btn-primary"data-toggle="modal"data-target="#exampleModal"data-whatever="@fat">Open modal for @fat</button><buttontype="button"class="btn btn-primary"data-toggle="modal"data-target="#exampleModal"data-whatever="@getbootstrap">Open modal for @getbootstrap</button><divclass="modal fade"id="exampleModal"tabindex="-1"role="dialog"aria-labelledby="exampleModalLabel"aria-hidden="true"><divclass="modal-dialog"role="document"><divclass="modal-content"><divclass="modal-header"><h5class="modal-title"id="exampleModalLabel">New message</h5><buttontype="button"class="close"data-dismiss="modal"aria-label="Close"><spanaria-hidden="true">×</span></button></div><divclass="modal-body"><form><divclass="form-group"><labelfor="recipient-name"class="col-form-label">Recipient:</label><inputtype="text"class="form-control"id="recipient-name"></div><divclass="form-group"><labelfor="message-text"class="col-form-label">Message:</label><textareaclass="form-control"id="message-text"></textarea></div></form></div><divclass="modal-footer"><buttontype="button"class="btn btn-secondary"data-dismiss="modal">Close</button><buttontype="button"class="btn btn-primary">Send message</button></div></div></div></div>
حرکت پذیری کو ہٹا دیں۔
ایسے ماڈلز کے لیے جو دیکھنے کے لیے دھندلا ہونے کے بجائے صرف ظاہر ہوتے ہیں، .fadeاپنے موڈل مارک اپ سے کلاس کو ہٹا دیں۔
متحرک بلندیاں
اگر کسی موڈل کے کھلے ہونے کے دوران اس کی اونچائی بدل جاتی ہے، تو $('#myModal').modal('handleUpdate')اسکرول بار ظاہر ہونے کی صورت میں آپ کو موڈل کی پوزیشن کو دوبارہ ایڈجسٹ کرنے کے لیے کال کرنا چاہیے۔
رسائی
موڈل ٹائٹل کا حوالہ دیتے ہوئے ، اور role="dialog"خود کو شامل کرنا یقینی بنائیں ۔ مزید برآں، آپ on کے ساتھ اپنے موڈل ڈائیلاگ کی تفصیل دے سکتے ہیں ۔aria-labelledby="...".modalrole="document".modal-dialogaria-describedby.modal
یوٹیوب ویڈیوز کو سرایت کرنا
موڈلز میں YouTube ویڈیوز کو ایمبیڈ کرنے کے لیے اضافی JavaScript کی ضرورت ہوتی ہے جو Bootstrap میں نہیں ہے تاکہ پلے بیک وغیرہ کو خود بخود روکا جا سکے۔ مزید معلومات کے لیے یہ مددگار اسٹیک اوور فلو پوسٹ دیکھیں ۔
اختیاری سائز
موڈلز کے دو اختیاری سائز ہوتے ہیں، جو ترمیم کرنے والے کلاسز کے ذریعے دستیاب ہوتے ہیں جو ایک پر رکھے جاتے ہیں .modal-dialog۔ تنگ ویو پورٹس پر افقی اسکرول بار سے بچنے کے لیے یہ سائز مخصوص بریک پوائنٹس پر لگتے ہیں۔
Large modal
...
Small modal
...
استعمال
موڈل پلگ ان ڈیٹا کی خصوصیات یا جاوا اسکرپٹ کے ذریعے آپ کے پوشیدہ مواد کو ڈیمانڈ پر ٹوگل کرتا ہے۔ یہ پہلے سے طے شدہ اسکرولنگ رویے کو اوور رائڈ .modal-openکرنے میں بھی اضافہ کرتا ہے اور موڈل سے باہر کلک کرنے پر دکھائے گئے ماڈلز کو مسترد کرنے کے لیے ایک کلک ایریا فراہم کرتا ہے۔<body>.modal-backdrop
ڈیٹا اوصاف کے ذریعے
جاوا اسکرپٹ لکھے بغیر موڈل کو چالو کریں۔ ایک کنٹرولر عنصر پر سیٹ کریں data-toggle="modal"، جیسے بٹن، ایک کے ساتھ data-target="#foo"یا href="#foo"کسی مخصوص موڈل کو ٹوگل کرنے کے لیے ہدف بنانا۔
جاوا اسکرپٹ کے ذریعے
myModalJavaScript کی ایک لائن کے ساتھ id کے ساتھ ایک موڈل کو کال کریں :
اختیارات
اختیارات کو ڈیٹا انتساب یا JavaScript کے ذریعے منتقل کیا جا سکتا ہے۔ ڈیٹا کی خصوصیات کے لیے، آپشن کا نام شامل کریں data-، جیسا کہ میں data-backdrop=""۔
نام
قسم
طے شدہ
تفصیل
پس منظر
بولین یا تار'static'
سچ ہے
ایک موڈل بیک ڈراپ عنصر پر مشتمل ہے۔ متبادل طور پر، staticایک ایسے پس منظر کی وضاحت کریں جو کلک کرنے پر موڈل کو بند نہ کرے۔
کی بورڈ
بولین
سچ ہے
Escape کلید کو دبانے پر موڈل بند ہو جاتا ہے۔
توجہ مرکوز
بولین
سچ ہے
ابتدائی ہونے پر موڈل پر توجہ مرکوز کرتا ہے۔
دکھائیں
بولین
سچ ہے
شروع ہونے پر موڈل دکھاتا ہے۔
طریقے
غیر مطابقت پذیر طریقے اور ٹرانزیشن
تمام API طریقے غیر مطابقت پذیر ہیں اور ایک منتقلی شروع کرتے ہیں ۔ منتقلی شروع ہوتے ہی وہ کال کرنے والے کے پاس واپس آ جاتے ہیں لیکن اس کے ختم ہونے سے پہلے ۔ اس کے علاوہ، منتقلی کے جزو پر میتھڈ کال کو نظر انداز کر دیا جائے گا ۔
آپ کے مواد کو ایک ماڈل کے طور پر فعال کرتا ہے۔ اختیاری اختیارات کو قبول کرتا ہے object۔
.modal('toggle')
دستی طور پر ایک موڈل ٹوگل کرتا ہے۔ موڈل کے حقیقت میں دکھائے جانے یا چھپنے سے پہلے کال کرنے والے کے پاس واپس آجاتا ہے (یعنی واقعہ shown.bs.modalیا hidden.bs.modalواقعہ ہونے سے پہلے)۔
.modal('show')
دستی طور پر ایک موڈل کھولتا ہے۔ موڈل کے حقیقت میں دکھائے جانے سے پہلے کال کرنے والے کے پاس واپس آجاتا ہے (یعنی shown.bs.modalواقعہ پیش آنے سے پہلے)۔
.modal('hide')
دستی طور پر ایک موڈل چھپاتا ہے۔ موڈل کے حقیقت میں پوشیدہ ہونے سے پہلے کال کرنے والے کے پاس واپس آجاتا ہے (یعنی hidden.bs.modalواقعہ پیش آنے سے پہلے)۔
.modal('handleUpdate')
دستی طور پر موڈل کی پوزیشن کو ایڈجسٹ کریں اگر کسی موڈل کے کھلے ہونے کے دوران اس کی اونچائی تبدیل ہوتی ہے (یعنی اسکرول بار ظاہر ہونے کی صورت میں)۔
.modal('dispose')
ایک عنصر کے موڈل کو تباہ کرتا ہے۔
تقریبات
بوٹسٹریپ کی موڈل کلاس موڈل فنکشنلٹی میں شامل ہونے کے لیے چند واقعات کو بے نقاب کرتی ہے۔ تمام موڈل واقعات خود موڈل پر فائر کیے جاتے ہیں (یعنی پر <div class="modal">)۔
واقعہ کی قسم
تفصیل
show.bs.modal
یہ واقعہ فوری طور پر فائر ہو جاتا ہے جب showمثال کا طریقہ کہا جاتا ہے۔ اگر کلک کی وجہ سے ہو تو، کلک کردہ عنصر relatedTargetایونٹ کی پراپرٹی کے طور پر دستیاب ہوتا ہے۔
دکھایا گیا بی ایس موڈل
یہ ایونٹ اس وقت برطرف ہو جاتا ہے جب موڈل صارف کے لیے مرئی ہو جاتا ہے (CSS ٹرانزیشن مکمل ہونے کا انتظار کرے گا)۔ اگر کلک کی وجہ سے ہو تو، کلک کردہ عنصر relatedTargetایونٹ کی پراپرٹی کے طور پر دستیاب ہوتا ہے۔
hide.bs.modal
اس واقعہ کو فوری طور پر برطرف کر دیا جاتا ہے جب hideمثال کے طریقے کو بلایا جاتا ہے۔
hidden.bs.modal
یہ ایونٹ اس وقت برطرف ہو جاتا ہے جب موڈل صارف سے چھپ جانا ختم کر دیتا ہے (CSS ٹرانزیشن مکمل ہونے کا انتظار کرے گا)۔