JavaScript
jQuery üzerine kurulu isteğe bağlı JavaScript eklentilerimizle Bootstrap'a hayat verin. Her bir eklenti, verilerimiz ve programatik API seçeneklerimiz ve daha fazlası hakkında bilgi edinin.
Bireysel veya derlenmiş
Eklentiler tek tek dahil edilebilir (Bootstrap'in bireyi kullanılarak js/dist/*.js
) veya tümü aynı anda bootstrap.js
veya küçültülmüş olarak bootstrap.min.js
(her ikisini birden dahil etmeyin) dahil edilebilir.
/js/dist/*.js
Bir paketleyici (Webpack, Rollup…) kullanıyorsanız, UMD'ye hazır dosyaları kullanabilirsiniz .
bağımlılıklar
Bazı eklentiler ve CSS bileşenleri diğer eklentilere bağlıdır. Eklentileri tek tek eklerseniz, bu bağımlılıkları belgelerde kontrol ettiğinizden emin olun. Ayrıca tüm eklentilerin jQuery'ye bağlı olduğunu unutmayın (bu, jQuery'nin eklenti dosyalarından önce dahil edilmesi gerektiği anlamına gelir ). Hangi jQuery sürümlerinin desteklendiğini görmek için bize danışın .package.json
Açılır listelerimiz, açılır pencerelerimiz ve araç ipuçlarımız da Popper.js'ye bağlıdır .
Veri öznitelikleri
Hemen hemen tüm Bootstrap eklentileri, veri öznitelikleri ile yalnızca HTML aracılığıyla etkinleştirilebilir ve yapılandırılabilir (tercih ettiğimiz JavaScript işlevselliğini kullanma yöntemimiz). Tek bir öğe üzerinde yalnızca bir veri özniteliği kümesi kullandığınızdan emin olun (örneğin, aynı düğmeden bir araç ipucunu ve modu tetikleyemezsiniz.)
Ancak bazı durumlarda bu işlevin devre dışı bırakılması istenebilir. API veri özniteliğini devre dışı bırakmak için, aşağıdaki gibi ad alanlı belgedeki tüm olayların bağlantısını kaldırın data-api
:
Alternatif olarak, belirli bir eklentiyi hedeflemek için, eklentinin adını aşağıdaki gibi data-api ad alanıyla birlikte ad alanı olarak eklemeniz yeterlidir:
seçiciler
Şu anda DOM öğelerini sorgulamak için yerel yöntemleri kullanıyoruz querySelector
ve querySelectorAll
performans nedenleriyle, geçerli seçiciler kullanmanız gerekiyor . Örneğin, özel seçiciler kullanıyorsanız: collapse:Example
bunlardan kaçındığınızdan emin olun.
Olaylar
Bootstrap, çoğu eklentinin benzersiz eylemleri için özel etkinlikler sağlar. Genellikle bunlar mastar ve geçmiş ortaç biçiminde gelir - burada mastar (örn. show
) bir olayın başlangıcında tetiklenir ve geçmiş ortaç biçimi (örn. shown
) bir eylemin tamamlanmasıyla tetiklenir.
Tüm mastar olaylar preventDefault()
işlevsellik sağlar. Bu, bir eylemin yürütülmesini başlamadan önce durdurma yeteneği sağlar. Bir olay işleyicisinden false döndürmek de otomatik olarak preventDefault()
.
Programatik API
Ayrıca, tüm Bootstrap eklentilerini yalnızca JavaScript API aracılığıyla kullanabilmeniz gerektiğine inanıyoruz. Tüm genel API'ler tek, zincirlenebilir yöntemlerdir ve üzerinde işlem yapılan koleksiyonu döndürür.
Tüm yöntemler, isteğe bağlı bir seçenekler nesnesini, belirli bir yöntemi hedefleyen bir dizeyi veya hiçbir şeyi (varsayılan davranışa sahip bir eklenti başlatan) kabul etmelidir:
Her eklenti ayrıca ham yapıcısını bir Constructor
özellik üzerinde gösterir: $.fn.popover.Constructor
. Belirli bir eklenti örneği almak istiyorsanız, onu doğrudan bir öğeden alın: $('[rel="popover"]').data('popover')
.
Asenkron fonksiyonlar ve geçişler
Tüm programatik API yöntemleri zaman uyumsuzdur ve geçiş başlatıldığında ancak bitmeden arayana geri döner .
Geçiş tamamlandıktan sonra bir eylemi gerçekleştirmek için ilgili olayı dinleyebilirsiniz.
Ek olarak, geçiş yapan bir bileşen üzerindeki bir yöntem çağrısı yoksayılacaktır .
Varsayılan ayarları
Eklentinin Constructor.Default
nesnesini değiştirerek bir eklentinin varsayılan ayarlarını değiştirebilirsiniz:
Çatışma yok
Bazen Bootstrap eklentilerini diğer UI çerçeveleriyle birlikte kullanmak gerekir. Bu durumlarda, zaman zaman ad alanı çakışmaları meydana gelebilir. Böyle bir durumda, .noConflict
değerini geri almak istediğiniz eklentiyi arayabilirsiniz.
Sürüm numaraları
VERSION
Bootstrap'in jQuery eklentilerinin her birinin sürümüne , eklentinin kurucusunun özelliği aracılığıyla erişilebilir . Örneğin, araç ipucu eklentisi için:
JavaScript devre dışı bırakıldığında özel geri dönüş yok
Bootstrap'ın eklentileri, JavaScript devre dışı bırakıldığında özellikle zarif bir şekilde geri düşmez. Bu durumda kullanıcı deneyimini önemsiyorsanız <noscript>
, durumu (ve JavaScript'in nasıl yeniden etkinleştirileceğini) kullanıcılarınıza açıklamak ve/veya kendi özel yedeklerinizi eklemek için kullanın.
Üçüncü taraf kitaplıkları
Bootstrap, Prototype veya jQuery UI gibi üçüncü taraf JavaScript kitaplıklarını resmi olarak desteklemez . Ad alanlı olaylara rağmen .noConflict
, kendi başınıza düzeltmeniz gereken uyumluluk sorunları olabilir.
kullanım
Tüm Bootstrap JavaScript dosyaları bağlıdır util.js
ve diğer JavaScript dosyalarıyla birlikte dahil edilmelidir. Derlenmiş (veya küçültülmüş) kullanıyorsanız bootstrap.js
, bunu eklemenize gerek yoktur - zaten oradadır.
util.js
yardımcı işlevler ve transitionEnd
olaylar için temel bir yardımcının yanı sıra bir CSS geçiş öykünücüsü içerir. Diğer eklentiler tarafından CSS geçiş desteğini kontrol etmek ve asılı geçişleri yakalamak için kullanılır.
dezenfektan
Araç ipuçları ve Popover'lar, HTML'yi kabul eden seçenekleri sterilize etmek için yerleşik dezenfektanımızı kullanır.
Varsayılan whiteList
değer aşağıdaki gibidir:
Bu varsayılana yeni değerler eklemek whiteList
istiyorsanız aşağıdakileri yapabilirsiniz:
DOMPurify gibi özel bir kitaplık kullanmayı tercih ettiğiniz için dezenfektanımızı atlamak istiyorsanız , aşağıdakileri yapmalısınız: