Я пытаюсь реализовать слайдер карусели, используя jquery. Однако функция animate работает только для первого элемента. Все мои элементы имеют одинаковый класс.
Попытка включения класса каждого элемента (#myCarousel .carousel-inner .item), который не работает. Когда я анимирую только это - (#myCarousel .carousel-inner)
он показывает только первое изображение.
Это HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Carousel Slider</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="css/carousel_slider.css">
<style>
body{
background-color:lightblue;
}
h1, h2, h3 {
text-align:center;
}
</style>
<body>
<div id="myCarousel" class="carousel slide">
<div class="carousel-inner" role="listbox">
<div class="item active">
<img src="images/img1.jpg" alt="image 1" width="1000" height="563">
<div class="carousel-caption">
<h3>name</h3>
<p>description</p>
</div>
</div>
<div class="item">
<img src="images/img2.jpg" alt="image 2" width="970" height="546">
<div class="carousel-caption">
<h3>name</h3>
<p>description</p>
</div>
</div>
</div>
</div>
</body>
</html>
Это мой JQuery:
$(document).ready(function(){
$("#myCarousel .carousel-inner").each(function(){
setInterval(function(){
$("#myCarousel .carousel-inner").animate({marginLeft:-800},500,function(){
$(this).find("div:last").after($(this).find("div:first"));
$(this).css({marginLeft:0});
});
},5000);
}); });
Файл CSS:
/* Carousel slider CSS */
#myCarousel {
width:800px;
height:350px;
margin:20px auto;
padding-right: 40px;
padding-left: 40px;
overflow: hidden;
}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
width: 88%;
margin: auto;
}
Я не получаю никаких сообщений об ошибках, но вывод, который я вижу, это просто первое изображение, выпадающее из кадра.