W3幻灯片实施无法正常运行

时间:2018-07-04 13:01:34

标签: javascript html css animation slideshow

https://www.w3schools.com/w3css/tryit.asp?filename=tryw3css_slideshow_fading

使用上面的链接,您可以看到一个示例的动画淡入淡出幻灯片演示,我正在尝试将其实施到我的网站中。但是,当我复制确切的代码并将其用于我时,它会将堆叠在一起的图像显示为一张图像,然后将其淡入淡出为同一图像(由所有图像组成)。 / p>

您知道为什么会这样吗,还是可以从中获取动画幻灯片的其他来源?唯一需要考虑的另一件事是,在样式文件中,所有涉及“ webkit”的内容都用红色下划线标出。我虽然使用的是chrome,所以我认为这不是问题。

代码如下:

<!DOCTYPE html>
<html>
<title>W3.CSS</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">
<body>

<div class="w3-content w3-section" style="max-width:500px">
  <p>The w3-animate-fading class animates an element in and out (takes about 10 seconds).</p>

  <img class="mySlides w3-animate-fading" src="../../assets/img/img_rr_01.jpg" style="width:100%" alt="image1">
  <img class="mySlides w3-animate-fading" src="../../assets/img/img_rr_02.jpg" style="width:100%" alt="image2">
  <img class="mySlides w3-animate-fading" src="../../assets/img/img_rr_03.jpg" style="width:100%" alt="image3">
  <img class="mySlides w3-animate-fading" src="../../assets/img/img_rr_04.jpg" style="width:100%" alt="image4">
</div>

<script>
var myIndex = 0;
carousel();

function carousel() {
    var i;
    var x = document.getElementsByClassName("mySlides");
    for (i = 0; i < x.length; i++) {
       x[i].style.display = "none";  
    }
    myIndex++;
    if (myIndex > x.length) {myIndex = 1}    
    x[myIndex-1].style.display = "block";  
    setTimeout(carousel, 9000);    
}
</script>

</body>
</html>

这正是网站上的代码,我下载了它们使用的图像,为什么为什么我不能使它正常工作?

1 个答案:

答案 0 :(得分:0)

<!DOCTYPE html>
<html>
<title>W3.CSS</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">
<body>

<div class="w3-content w3-section" style="max-width:500px">
  <p>The w3-animate-fading class animates an element in and out (takes about 10 seconds).</p>

  <img class="mySlides w3-animate-fading" src="img_rr_01.jpg" style="width:100%" alt="image1">
  <img class="mySlides w3-animate-fading" src="img_rr_02.jpg" style="width:100%" alt="image2">
  <img class="mySlides w3-animate-fading" src="img_rr_03.jpg" style="width:100%" alt="image3">
  <img class="mySlides w3-animate-fading" src="img_rr_04.jpg" style="width:100%" alt="image4">
</div>

<script>
var myIndex = 0;
carousel();

function carousel() {
    var i;
    var x = document.getElementsByClassName("mySlides");
    for (i = 0; i < x.length; i++) {
       x[i].style.display = "none";  
    }
    myIndex++;
    if (myIndex > x.length) {myIndex = 1}    
    x[myIndex-1].style.display = "block";  
    setTimeout(carousel, 9000);    
}
</script>

</body>
</html>

此处正常工作。可能是其他原因引起我的麻烦。