جاڤاسکڕێپت
بە پێوەکراوەکانی جاڤاسکڕێپتی ئیختیاریمان کە لەسەر jQuery دروستکراون، Bootstrap بهێنە ژیانەوە. دەربارەی هەر پێوەکراوێک، داتا و هەڵبژاردەکانی API بەرنامەیی و زۆر شتی تر بزانە.
تاکەکەسی یان کۆکراوە
دەتوانرێت پێوەکراوەکان بە تاک (بە بەکارهێنانی تاکەکەسی Bootstrap js/dist/*.js
) جێگیر بکرێن، یان هەموویان بە یەکجار بە بەکارهێنانی bootstrap.js
یان بچووککراو bootstrap.min.js
(هەردووکیان لەخۆ مەگرن).
ئەگەر باندلەرێک بەکاربهێنیت (Webpack, Rollup...)، دەتوانیت ئەو /js/dist/*.js
فایلانە بەکاربهێنیت کە UMD ئامادەن.
وابەستەییەکان
هەندێک لە پێوەکراوەکان و پێکهاتەکانی CSS پشت بە پێوەکراوەکانی تر دەبەستن. ئەگەر پێوەکراوەکان بە تاک بە تاک جێگیر دەکەیت، دڵنیابە لە پشکنینی ئەم وابەستەییانە لە دۆکیومێنتەکاندا. هەروەها تێبینی ئەوە بکە کە هەموو پێوەکراوەکان پشت بە jQuery دەبەستن (ئەمە واتە jQuery دەبێت پێش فایلەکانی پێوەکراوەکان بێت). راوێژ بە ئێمە بکەpackage.json
بۆ ئەوەی بزانیت کام وەشانی jQuery پشتگیری دەکرێت.
هەروەها درۆپداونەکانمان، پۆپۆڤەرەکان و ئامرازەکانمان پشت بە Popper.js دەبەستن .
تایبەتمەندیەکانی داتا
نزیکەی هەموو پێوەکراوەکانی Bootstrap دەتوانرێت چالاک بکرێت و ڕێکبخرێت تەنها لە ڕێگەی HTML بە تایبەتمەندی داتا (شێوازی پەسەندکراوی ئێمە بۆ بەکارهێنانی کارایی جاڤاسکڕێپت). دڵنیابە کە تەنها یەک کۆمەڵە تایبەتمەندی داتا لەسەر یەک توخم بەکاردەهێنیت (بۆ نموونە، ناتوانیت ئامۆژگاری و مۆداڵی لە هەمان دوگمەوە دەستپێبکەیت.)
بەڵام لە هەندێک بارودۆخدا ڕەنگە باشتر بێت ئەم کاراییە لەکاربخرێت. بۆ ناکارکردنی API ی تایبەتمەندی داتا، هەموو ڕووداوەکان لەسەر ناوی بەڵگەنامەکە بکەرەوە کە data-api
بەم شێوەیە جیاکراوەتەوە:
یان بۆ بە ئامانجگرتنی پێوەکراوێکی دیاریکراو، تەنها ناوی پێوەکراوەکە وەک ناوچەی ناو لەگەڵ شوێنی ناوی data-api بەم شێوەیە دابنێ:
هەڵبژێرەران
لە ئێستادا بۆ پرسیارکردن لە توخمەکانی DOM ئێمە شێوازە ڕەسەنەکان بەکاردەهێنین querySelector
و querySelectorAll
بۆ هۆکاری کارایی، بۆیە دەبێت هەڵبژێرەری دروست بەکاربهێنیت . ئەگەر هەڵبژێرەری تایبەت بەکاردەهێنیت، بۆ نموونە: collapse:Example
دڵنیابە لەوەی کە لێیان ڕزگارت دەبێت.
ڕووداوەکان
بووتستراپ ڕووداوە تایبەتەکان بۆ زۆربەی کردارە ناوازەکانی پێوەکراوەکان دابین دەکات. بەگشتی ئەمانە بە شێوەی بێکۆتایی و بەشێکی ڕابردوو دێن - کە بێکۆتایی (ex. show
) لە سەرەتای ڕووداوێکدا دەستپێدەکات، و فۆڕمی بەشە ڕابردووەکەی (ex. shown
) لە کاتی تەواوبوونی کردارێکدا دەستپێدەکات.
هەموو ڕووداوە بێکۆتاییەکان preventDefault()
کارایی دابین دەکەن. ئەمەش توانای وەستاندنی جێبەجێکردنی کردارێک پێش دەستپێکردنی دەدات. هەروەها گەڕانەوەی false لە مامەڵەکارێکی ڕووداوەوە بە شێوەیەکی ئۆتۆماتیکی بانگ preventDefault()
دەکات .
API بەرنامەیی
هەروەها ئێمە پێمان وایە پێویستە بتوانیت هەموو پێوەکراوەکانی Bootstrap بەکاربهێنیت تەنها لە ڕێگەی JavaScript API ەوە. هەموو API گشتیەکان شێوازی تاک و زنجیرن و ئەو کۆکردنەوە دەگەڕێننەوە کە کاریان لەسەر کراوە.
هەموو شێوازەکان دەبێ شتێکی هەڵبژاردەی هەڵبژاردە قبوڵ بکەن، ڕستەیەک کە شێوازێکی دیاریکراو دەکاتە ئامانج، یان هیچ (کە پێوەکراوێک بە هەڵسوکەوتی پێشوەختە دەستپێدەکات):
هەروەها هەر پێوەکراوێک بنیاتنەرە خاوەکەی لەسەر Constructor
تایبەتمەندییەک ئاشکرا دەکات: $.fn.popover.Constructor
. ئەگەر دەتەوێت نموونەیەکی پێوەکراوێکی تایبەت بەدەست بهێنیت، ڕاستەوخۆ لە توخمێکەوە وەریبگرەوە: $('[rel="popover"]').data('popover')
.
ئەرک و گواستنەوە ناهاوسەنگەکان
هەموو شێوازەکانی API بەرنامەیی ناهاوسەنگن و دەگەڕێنەوە بۆ بانگکەر کاتێک گواستنەوەکە دەستی پێکرد بەڵام پێش ئەوەی کۆتایی بێت .
بۆ ئەوەی کردارێک جێبەجێ بکەیت کاتێک گواستنەوەکە تەواو بوو، دەتوانیت گوێ لە ڕووداوی گونجاو بگرێت.
سەرەڕای ئەوە بانگەوازی میتۆد لەسەر پێکهاتەیەکی گواستنەوە پشتگوێ دەخرێت .
ڕێکخستنە پێشوەختەکان
دەتوانیت ڕێکخستنە پێشوەختەکان بۆ پێوەکراوێک بگۆڕیت بە دەستکاریکردنی Constructor.Default
شتەکەی پێوەکراوەکە:
هیچ ململانێیەک نییە
هەندێک جار پێویستە پێوەکراوەکانی Bootstrap لەگەڵ چوارچێوەی UI ی تر بەکاربهێنرێت. لەم بارودۆخانەدا، ناوبەناو دەتوانێت پێکدادانی ناوچەی ناوەکان ڕووبدات. ئەگەر ئەمە ڕوویدا، دەتوانیت بانگی .noConflict
ئەو پێوەکراوە بکەیت کە دەتەوێت بەهاکەی بگەڕێنیتەوە.
ژمارەکانی وەشانی
دەتوانرێت لە ڕێگەی VERSION
تایبەتمەندی بنیاتنەری پێوەکراوەکەوە دەست بە وەشانی هەریەک لە پێوەکراوەکانی jQuery ی Bootstrap بگات. بۆ نموونە بۆ پێوەکراوەکەی tooltip:
هیچ فۆڵباکێکی تایبەت نییە کاتێک جاڤاسکڕێپت لەکارخراوە
پێوەکراوەکانی Bootstrap بە تایبەتی بە ڕەوشتەوە ناگەڕێنەوە کاتێک جاڤاسکڕێپت لەکاردەخرێت. ئەگەر لەم حاڵەتەدا گرنگی بە ئەزموونی بەکارهێنەر دەدەیت، بەکاری بهێنە <noscript>
بۆ ڕوونکردنەوەی دۆخەکە (و چۆن جاڤاسکڕێپت چالاک بکەیتەوە) بۆ بەکارهێنەرانت، و/یان زیادکردنی پاشەکشەی تایبەت بە خۆت.
کتێبخانەکانی لایەنی سێیەم
بووتستراپ بە فەرمی پشتگیری لە کتێبخانەکانی جاڤاسکڕێپتی لایەنی سێیەم وەک Prototype یان jQuery UI ناکات. سەرەڕای .noConflict
ڕووداوەکان و ناوەکان، لەوانەیە کێشەی گونجان هەبن کە پێویستە لەسەر خۆت چارەسەریان بکەیت.
بەکارهێنان
هەموو فایلەکانی جاڤاسکڕێپتی Bootstrap پشتیان پێ دەبەستێت util.js
و دەبێت شانبەشانی فایلەکانی تری جاڤاسکڕێپت دابنرێت. ئەگەر تۆ کۆمپایڵکراو (یان بچووککراو) بەکاردەهێنیت bootstrap.js
، پێویست ناکات ئەمە بخەیتە ناوەوە- پێشتر لەوێیە.
util.js
ئەرکە سوودبەخشەکان و یارمەتیدەرێکی بنەڕەتی بۆ transitionEnd
ڕووداوەکان و هەروەها ئیمۆلیتەری گواستنەوەی CSS لەخۆدەگرێت. لەلایەن پێوەکراوەکانی ترەوە بەکاردێت بۆ پشکنینی پشتگیری گواستنەوەی CSS و بۆ گرتنی گواستنەوە هەڵواسراوەکان.