簡體   English   中英

引導輪播指示器可防止事件冒泡

[英]Bootstrap carousel indicators prevent event bubbling

基本上,這里的任何示例https://getbootstrap.com/docs/4.0/components/carousel/都可以解決問題。 如果您單擊指標然后快速重復該過程,animation 會不斷排隊,並且您將這個奇怪的事件隊列鏈接在一起。

Javascript 中有沒有辦法停止添加這些隊列? 例如,我在幻燈片回調中添加了一個控制台日志:

$('#myCarousel').on('slide.bs.carousel', function () {
  console.log("slide")
})

然后,如果我檢查我的控制台,它將看起來像這樣

當我按下 Javascript 中的指示器時,如何防止該數字不斷增加? 我將如何為點擊事件做這件事?

好的,如果有人遇到這個,這就是我解決它的方法。

我在身體上添加了一個額外的 class 動畫(您可以在任何地方添加它),然后以 0.6 秒的超時時間將其刪除(與 css 中的引導程序 animation 持續時間相同)。

jQuery('#carouselExampleCaptions').on('slide.bs.carousel', function (e) {
    if ($("body").hasClass("is-animating")) {
      return false;
    }
    $('body').addClass('is-animating');
    // Do your code here
    setTimeout(function () {$('body').removeClass('is-animating')}, 600);
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM