使用 Jquery 的 Bootstrap 4 动态轮播

Posted

技术标签:

【中文标题】使用 Jquery 的 Bootstrap 4 动态轮播【英文标题】:Bootstrap 4 Dynamic Carousel using Jquery 【发布时间】:2018-10-24 21:46:24 【问题描述】:

我正在尝试将图像动态添加到引导轮播,但它只是在列表中显示它们 (https://i.imgur.com/8lOOg3w.jpg)。

图片是 National Parks Service API 网址 (https://www.nps.gov/common/uploads/structured_data/3C86AAE7-1DD8-B71B-0BA8BC5E5E895E98.jpg)。

这是 html

<div id="carousel" class="carousel slide" data-ride="carousel">
    <!-- Indicators -->
    <ol class="carousel-indicators"></ol>
    <!-- Wrapper for slides -->
    <div class="carousel-inner"></div>
    <!-- Controls -->
        <a class="carousel-control-prev" href="#demo" data-slide="prev">
        <span class="carousel-control-prev-icon"></span>
        </a>
    <a class="carousel-control-next" href="#demo" data-slide="next">
        <span class="carousel-control-next-icon"></span>
    </a>
</div>

和JS

$(document).ready(function()
for(let j = 0; j < parkInfo.data[i].images.length; j++) 
  $('<div class="item"><img src="'+parkInfo.data[i].images[j].url+'" >   </div>').appendTo('.carousel-inner');
  $('<li data-target="#carousel" data-slide-to="'+j+'"></li>').appendTo('.carousel-indicators')


  $('.item').first().addClass('active');
  $('.carousel-indicators > li').first().addClass('active');
  $('#carousel').carousel();
);

【问题讨论】:

【参考方案1】:

看起来您需要在项目“carousel-item”而不是“item”上开设课程。

https://jsfiddle.net/orb9945u/

$(document).ready(function()
    for(let j = 0; j < 5; j++) 
        $('<div class="carousel-item"><img 
          src="https://loremflickr.com/320/240" >   
          </div>').appendTo('.carousel-inner');
        $('<li data-target="#carousel" data-slide-to="'+j+'"> 
          </li>').appendTo('.carousel-indicators')

    

    $('.carousel-item').first().addClass('active');
    $('.carousel-indicators > li').first().addClass('active');
    $('#carousel').carousel();
);

【讨论】:

这可行,但现在当我点击箭头时,图像不会改变。 你检查过小提琴吗?它在那里工作。您需要做的是在 jQuery 代码中将类从“item”更改为“carousel-item”。 我必须为箭头添加点击事件才能工作,但感谢您让轮播开始工作!

以上是关于使用 Jquery 的 Bootstrap 4 动态轮播的主要内容,如果未能解决你的问题,请参考以下文章

Bootstrap 4如何在同一页面上使用多个jQuery版本[重复]

Bootstrap 4.0.0 的 Jquery 兼容版本是啥

使用 Jquery 的 Bootstrap 4 动态轮播

JSPM / Aurelia / Bootstrap 4 找不到 jQuery

使用Javascript / jQuery进行Bootstrap 4表单验证

带有 JQuery 和 AJAX 的 Bootstrap 4 模态?