Source

پاپورز

Bootstrap popovers شامل کرنے کے لیے دستاویزات اور مثالیں، جیسا کہ iOS میں پایا جاتا ہے، آپ کی سائٹ کے کسی بھی عنصر میں۔

جائزہ

پاپ اوور پلگ ان کا استعمال کرتے وقت جاننے کی چیزیں:

  • Popovers پوزیشننگ کے لیے 3rd پارٹی لائبریری Popper.js پر انحصار کرتے ہیں ۔ آپ کو bootstrap.js سے پہلے popper.min.js کو شامل کرنا چاہیے یا popovers کے کام کرنے کے لیے جو Popper.js پر مشتمل ہے استعمال bootstrap.bundle.min.jsکریں !bootstrap.bundle.js
  • Popovers کو انحصار کے طور پر ٹول ٹپ پلگ ان کی ضرورت ہوتی ہے۔
  • اگر آپ ہمارا جاوا اسکرپٹ ماخذ سے بنا رہے ہیں، تو اس کی ضرورت ہےutil.js ۔
  • Popovers کارکردگی کی وجوہات کی بناء پر آپٹ ان ہوتے ہیں، لہذا آپ کو خود ان کی ابتدا کرنی چاہیے ۔
  • صفر کی لمبائی titleاور contentاقدار کبھی بھی پاپ اوور نہیں دکھائیں گی۔
  • container: 'body'مزید پیچیدہ اجزاء (جیسے ہمارے ان پٹ گروپس، بٹن گروپس وغیرہ) میں رینڈرنگ کے مسائل سے بچنے کے لیے وضاحت کریں۔
  • چھپے ہوئے عناصر پر پاپ اوور کو متحرک کرنا کام نہیں کرے گا۔
  • .disabledریپر عنصر پر یا disabledعناصر کے لیے پاپ اوور کو متحرک کیا جانا چاہیے۔
  • متعدد لائنوں میں لپیٹنے والے اینکرز سے متحرک ہونے پر، پاپ اوور اینکرز کی مجموعی چوڑائی کے درمیان مرکوز ہوں گے۔ اس رویے سے بچنے کے لیے .text-nowrapاپنے s پر استعمال کریں ۔<a>
  • پاپ اوور کو چھپایا جانا چاہیے اس سے پہلے کہ ان کے متعلقہ عناصر کو DOM سے ہٹا دیا جائے۔

یہ دیکھنے کے لیے پڑھتے رہیں کہ پاپ اوور کچھ مثالوں کے ساتھ کیسے کام کرتے ہیں۔

مثال: ہر جگہ پاپ اوور کو فعال کریں۔

کسی صفحے پر تمام پاپ اوور کو شروع کرنے کا ایک طریقہ یہ ہوگا کہ ان کو ان کے data-toggleوصف سے منتخب کیا جائے:

$(function () {
  $('[data-toggle="popover"]').popover()
})

مثال: containerآپشن کا استعمال

جب آپ کے پاس پیرنٹ ایلیمنٹ پر کچھ اسٹائل ہوتے ہیں جو پاپ اوور میں مداخلت کرتے ہیں، تو آپ اپنی مرضی کی وضاحت کرنا چاہیں گے containerتاکہ پاپ اوور کا ایچ ٹی ایم ایل اس عنصر کے اندر ظاہر ہو۔

$(function () {
  $('.example-popover').popover({
    container: 'body'
  })
})

مثال

<button type="button" class="btn btn-lg btn-danger" data-toggle="popover" title="Popover title" data-content="And here's some amazing content. It's very engaging. Right?">Click to toggle popover</button>

چار سمتیں۔

چار اختیارات دستیاب ہیں: اوپر، دائیں، نیچے، اور بائیں سیدھ میں۔

<button type="button" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="top" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus.">
  Popover on top
</button>

<button type="button" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="right" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus.">
  Popover on right
</button>

<button type="button" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="bottom" data-content="Vivamus
sagittis lacus vel augue laoreet rutrum faucibus.">
  Popover on bottom
</button>

<button type="button" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="left" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus.">
  Popover on left
</button>

اگلے کلک پر برخاست کریں۔

focusٹوگل عنصر سے مختلف عنصر کے صارف کے اگلے کلک پر پاپ اوور کو مسترد کرنے کے لیے ٹرگر کا استعمال کریں ۔

برخاست-پر-اگلے-کلک کے لیے مخصوص مارک اپ درکار ہے۔

مناسب کراس براؤزر اور کراس پلیٹ فارم رویے کے لیے، آپ کو ٹیگ کا استعمال کرنا چاہیے، <a>ٹیگ کا نہیں ،<button> اور آپ کو ایک tabindexوصف بھی شامل کرنا چاہیے۔

<a tabindex="0" class="btn btn-lg btn-danger" role="button" data-toggle="popover" data-trigger="focus" title="Dismissible popover" data-content="And here's some amazing content. It's very engaging. Right?">Dismissible popover</a>
$('.popover-dismiss').popover({
  trigger: 'focus'
})

غیر فعال عناصر

انتساب والے عناصر disabledمتعامل نہیں ہوتے ہیں، یعنی صارف پاپ اوور (یا ٹول ٹپ) کو متحرک کرنے کے لیے ان پر ہوور یا کلک نہیں کر سکتے۔ ایک کام کے طور پر، آپ پاپ اوور کو ریپر سے متحرک کرنا چاہیں گے <div>یا غیر فعال عنصر پر <span>اوور رائڈ کرنا چاہیں گے۔pointer-events

ڈس ایبلڈ پاپ اوور ٹرگرز کے لیے، آپ اس بات کو بھی ترجیح دے سکتے ہیں data-trigger="hover"کہ پاپ اوور آپ کے صارفین کے لیے فوری بصری فیڈ بیک کے طور پر ظاہر ہو کیونکہ وہ کسی معذور عنصر پر کلک کرنے کی توقع نہیں رکھتے۔

<span class="d-inline-block" data-toggle="popover" data-content="Disabled popover">
  <button class="btn btn-primary" style="pointer-events: none;" type="button" disabled>Disabled button</button>
</span>

استعمال

جاوا اسکرپٹ کے ذریعے پاپ اوور کو فعال کریں:

$('#example').popover(options)

اختیارات

اختیارات کو ڈیٹا انتساب یا JavaScript کے ذریعے منتقل کیا جا سکتا ہے۔ ڈیٹا کی خصوصیات کے لیے، آپشن کا نام شامل کریں data-، جیسا کہ میں data-animation=""۔

نام قسم طے شدہ تفصیل
حرکت پذیری بولین سچ ہے پاپ اوور پر سی ایس ایس فیڈ ٹرانزیشن کا اطلاق کریں۔
کنٹینر تار | عنصر | جھوٹا جھوٹا

پاپ اوور کو ایک مخصوص عنصر سے جوڑتا ہے۔ مثال: container: 'body'. یہ آپشن خاص طور پر اس لیے مفید ہے کہ یہ آپ کو دستاویز کے بہاؤ میں پاپ اوور کو محرک عنصر کے قریب رکھنے کی اجازت دیتا ہے - جو ونڈو کا سائز تبدیل کرنے کے دوران پاپ اوور کو محرک عنصر سے دور تیرنے سے روکے گا۔

مواد تار | عنصر | فنکشن ''

data-contentاگر انتساب موجود نہ ہو تو مواد کی ڈیفالٹ قدر ۔

اگر کوئی فنکشن دیا جاتا ہے، تو اسے اس thisعنصر کے حوالے سے کہا جائے گا جس کے ساتھ پاپ اوور منسلک ہے۔

تاخیر نمبر | چیز 0

پاپ اوور (ms) کو دکھانے اور چھپانے میں تاخیر - دستی ٹرگر کی قسم پر لاگو نہیں ہوتا ہے۔

اگر کوئی نمبر فراہم کیا جاتا ہے، تو چھپنے / دکھانے دونوں پر تاخیر کا اطلاق ہوتا ہے۔

آبجیکٹ کی ساخت ہے:delay: { "show": 500, "hide": 100 }

html بولین جھوٹا پاپ اوور میں HTML داخل کریں۔ textغلط ہونے کی صورت میں DOM میں مواد داخل کرنے کے لیے jQuery کا طریقہ استعمال کیا جائے گا۔ اگر آپ XSS حملوں کے بارے میں فکر مند ہیں تو متن کا استعمال کریں۔
جگہ کا تعین تار | فنکشن 'صحیح'

پاپ اوور کی پوزیشن کیسے لگائیں - آٹو | اوپر | نیچے | بائیں | صحیح
جب autoمخصوص کیا جاتا ہے، یہ متحرک طور پر پاپ اوور کو دوبارہ ترتیب دے گا۔

جب کسی فنکشن کو پلیسمنٹ کا تعین کرنے کے لیے استعمال کیا جاتا ہے، تو اسے پاپ اوور DOM نوڈ کے ساتھ اس کی پہلی دلیل کے طور پر اور محرک عنصر DOM نوڈ کو اس کے دوسرے کے طور پر کہا جاتا ہے۔ سیاق و سباق کو thisپاپ اوور مثال پر سیٹ کیا گیا ہے۔

سلیکٹر تار | جھوٹا جھوٹا اگر ایک سلیکٹر فراہم کیا جاتا ہے، تو پاپ اوور اشیاء کو مخصوص اہداف کے حوالے کر دیا جائے گا۔ عملی طور پر، یہ متحرک HTML مواد کو پاپ اوور شامل کرنے کے لیے استعمال کیا جاتا ہے۔ یہ اور ایک معلوماتی مثال دیکھیں ۔
سانچے تار '<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'

پاپ اوور بناتے وقت استعمال کرنے کے لیے بیس HTML۔

پاپ اوور titleمیں انجکشن لگایا جائے گا .popover-header۔

پاپ اوور contentمیں انجکشن لگایا جائے گا .popover-body۔

.arrowپاپ اوور کا تیر بن جائے گا۔

سب سے بیرونی ریپر عنصر کی .popoverکلاس ہونی چاہیے۔

عنوان تار | عنصر | فنکشن ''

titleاگر انتساب موجود نہیں ہے تو پہلے سے طے شدہ عنوان کی قدر ۔

اگر کوئی فنکشن دیا جاتا ہے، تو اسے اس thisعنصر کے حوالے سے کہا جائے گا جس کے ساتھ پاپ اوور منسلک ہے۔

محرک تار 'کلک' پاپ اوور کو کیسے متحرک کیا جاتا ہے - کلک کریں | ہوور | توجہ مرکوز | دستی آپ متعدد محرکات کو پاس کر سکتے ہیں۔ انہیں ایک جگہ کے ساتھ الگ کریں. manualکسی دوسرے ٹرگر کے ساتھ نہیں مل سکتا۔
آفسیٹ نمبر | تار 0 اس کے ہدف کے نسبت پاپ اوور کا آفسیٹ۔ مزید معلومات کے لیے Popper.js کے آفسیٹ دستاویزات سے رجوع کریں ۔
فال بیک پلیسمنٹ تار | صف 'پلٹائیں' یہ بتانے کی اجازت دیں کہ Popper فال بیک پر کون سی پوزیشن استعمال کرے گا۔ مزید معلومات کے لیے Popper.js کے رویے کی دستاویزات دیکھیں
حد تار | عنصر 'اسکرول پیرنٹ' پاپ اوور کی اوور فلو رکاوٹ کی حد۔ 'viewport', 'window', 'scrollParent', یا HTMLElement حوالہ (صرف JavaScript) کی اقدار کو قبول کرتا ہے ۔ مزید معلومات کے لیے Popper.js کی روک تھام اوور فلو دستاویزات دیکھیں ۔

انفرادی پاپورز کے لیے ڈیٹا کی خصوصیات

جیسا کہ اوپر بیان کیا گیا ہے، انفرادی پاپ اوور کے اختیارات کو ڈیٹا کی خصوصیات کے استعمال کے ذریعے متبادل طور پر بیان کیا جا سکتا ہے۔

طریقے

غیر مطابقت پذیر طریقے اور ٹرانزیشن

تمام API طریقے غیر مطابقت پذیر ہیں اور ایک منتقلی شروع کرتے ہیں ۔ منتقلی شروع ہوتے ہی وہ کال کرنے والے کے پاس واپس آ جاتے ہیں لیکن اس کے ختم ہونے سے پہلے ۔ اس کے علاوہ، منتقلی کے جزو پر میتھڈ کال کو نظر انداز کر دیا جائے گا ۔

مزید معلومات کے لیے ہماری جاوا اسکرپٹ دستاویزات دیکھیں۔

$().popover(options)

عنصر کے مجموعہ کے لیے پاپ اوور شروع کرتا ہے۔

.popover('show')

ایک عنصر کے پاپ اوور کو ظاہر کرتا ہے۔ پاپ اوور کے حقیقت میں دکھائے جانے سے پہلے کال کرنے والے کے پاس واپس آجاتا ہے (یعنی shown.bs.popoverواقعہ ہونے سے پہلے)۔ اسے پاپ اوور کا "دستی" محرک سمجھا جاتا ہے۔ Popovers جن کا عنوان اور مواد دونوں زیرو لینتھ ہیں کبھی ظاہر نہیں ہوتے ہیں۔

$('#element').popover('show')

.popover('hide')

ایک عنصر کے پاپ اوور کو چھپاتا ہے۔ پوپ اوور کے حقیقت میں چھپنے سے پہلے کال کرنے والے کے پاس واپس آجاتا ہے (یعنی hidden.bs.popoverواقعہ ہونے سے پہلے)۔ اسے پاپ اوور کا "دستی" محرک سمجھا جاتا ہے۔

$('#element').popover('hide')

.popover('toggle')

ایک عنصر کے پاپ اوور کو ٹوگل کرتا ہے۔ پاپ اوور کے حقیقت میں دکھائے جانے یا چھپنے سے پہلے کال کرنے والے کے پاس واپس آجاتا ہے (یعنی واقعہ shown.bs.popoverیا hidden.bs.popoverواقعہ ہونے سے پہلے)۔ اسے پاپ اوور کا "دستی" محرک سمجھا جاتا ہے۔

$('#element').popover('toggle')

.popover('dispose')

ایک عنصر کے پاپ اوور کو چھپاتا اور تباہ کرتا ہے۔ ڈیلیگیشن کا استعمال کرنے والے پاپ اوور (جو آپشن کا استعمال کرتے ہوئے بنائے گئےselector ہیں ) کو نسلی محرک عناصر پر انفرادی طور پر تباہ نہیں کیا جا سکتا۔

$('#element').popover('dispose')

.popover('enable')

ایک عنصر کے پاپ اوور کو دکھانے کی صلاحیت دیتا ہے۔ پاپ اوور بطور ڈیفالٹ فعال ہوتے ہیں۔

$('#element').popover('enable')

.popover('disable')

کسی عنصر کے پاپ اوور کو دکھانے کی صلاحیت کو ہٹاتا ہے۔ پاپ اوور صرف اس صورت میں دکھایا جا سکے گا جب اسے دوبارہ فعال کیا جائے۔

$('#element').popover('disable')

.popover('toggleEnabled')

کسی عنصر کے پاپ اوور کو دکھانے یا چھپانے کی صلاحیت کو ٹوگل کرتا ہے۔

$('#element').popover('toggleEnabled')

.popover('update')

کسی عنصر کے پاپ اوور کی پوزیشن کو اپ ڈیٹ کرتا ہے۔

$('#element').popover('update')

تقریبات

واقعہ کی قسم تفصیل
show.bs.popover یہ واقعہ فوری طور پر فائر ہو جاتا ہے جب showمثال کا طریقہ کہا جاتا ہے۔
دکھایا گیا بی ایس پاپ اوور یہ ایونٹ اس وقت برطرف ہو جاتا ہے جب پاپ اوور صارف کے لیے مرئی ہو جاتا ہے (CSS ٹرانزیشن مکمل ہونے کا انتظار کرے گا)۔
hide.bs.popover اس واقعہ کو فوری طور پر برطرف کر دیا جاتا ہے جب hideمثال کے طریقے کو بلایا جاتا ہے۔
hidden.bs.popover اس ایونٹ کو اس وقت برطرف کیا جاتا ہے جب پاپ اوور صارف سے پوشیدہ ہو جائے (CSS ٹرانزیشن مکمل ہونے کا انتظار کرے گا)۔
inserted.bs.popover یہ ایونٹ اس ایونٹ کے بعد فائر کیا جاتا ہے show.bs.popoverجب پاپ اوور ٹیمپلیٹ کو DOM میں شامل کیا جاتا ہے۔
$('#myPopover').on('hidden.bs.popover', function () {
  // do something…
})