温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何使用JavaScript和CSS实现简单的轮播图播放效果

发布时间:2020-07-16 11:08:30 来源:亿速云 阅读:151 作者:Leah 栏目:web开发

这篇文章运用简单易懂的例子给大家介绍如何使用JavaScript和CSS实现简单的轮播图播放效果,代码非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

 轮播图通常是关注的焦点,用于照片画廊或许多当代网站的大中心舞台。虽然过去Adobe Flash经常是使用CSS3和JavaScript的首选工具,但是轮播图可以轻松实现而无需大量代码。

我在这里使用的技术是使用标准JavaScript和CSS3实现简单轮播图的最简单方法之一,具有良好的交叉渐变过渡效果。

基本HTML是微不足道的。只需将几个图像放入div容器中:

<div class="slides">
  <img src="image/cup.jpg" >
  <img src="image/flower.jpg">
  <img src="image/flowers.jpg">
  <img src="image/strawberry.jpg">
  <img src="image/greatwall.jpg">
</div>

使用CSS在容器内堆叠所有图片并定义过渡(特定于浏览器的前缀可能必须用于过渡):

/* the slide container with a fixed size */
.slides {
  box-shadow: 0px 0px 6px black;
  margin: 0 auto;
  width: 500px;
  height: 300px;
  position: relative;
  }
  /* the images are positioned absolutely to stack. opacity transitions are animated. */
  .slides img { 
  display: block;
  position: absolute; 
  transition: opacity 1s;
  opacity: 0;
  width: 100%;
  }
  /* the first image is the current slide. it's faded in. */
  .slides img:first-child { 
  z-index: 2; 
  /* frontmost */
  opacity: 1;
  }
  /* the last image is the previous slide. it's behind the current slide and it's faded over. */
  .slides img:last-child {
  z-index: 1; 
  /* behind current slide */
  opacity: 1;
  }

在这个简单的设置之后,剩下的就是更改轮播图的顺序以推进轮播图放映。以下代码段定期将第一张图像(当前图片)移动到容器的末尾,从而使下一张图像成为当前图片。由于上面定义的CSS规则,更改以交叉渐变为动画。

function nextSlide() {
    var q = function(sel) {
     return document.querySelector(sel); 
     }   
    q(".slides").appendChild(q(".slides img:first-child"));
    }
    setInterval(nextSlide, 3000)

以上就是步骤的分析,下面是完整代码

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
	<title></title>
	<script type="text/javascript">
	function nextSlide() {
	if (typeof $ == "undefined") var $ = function(sel) { return document.querySelector(sel); }	
	$(".slides").appendChild($(".slides img:first-child"));
}
setInterval(nextSlide, 3000)
	</script>
	<style type="text/css">
	img{
		width: 500px;
		height: 300px;
	}
.slides {
  box-shadow: 0px 0px 6px black;
  margin: 0 auto;
  width: 500px;
  height: 300px;
  overflow: hidden;
}

.slides img { 
  position: absolute; 
  transition: opacity 1s;
  opacity: 0;
}

.slides img:first-child { 
  z-index: 2;
  opacity: 1;
}

.slides img:last-child {
  z-index: 1;
  opacity: 1;
}
</style>
</head>
<body>
<div class="slides">
  <img src="image/cup.jpg" >
  <img src="image/flower.jpg">
  <img src="image/flowers.jpg">
  <img src="image/strawberry.jpg">
  <img src="image/greatwall.jpg">
</div>
</body>
</html>

效果如下:

如何使用JavaScript和CSS实现简单的轮播图播放效果

关于如何使用JavaScript和CSS实现简单的轮播图播放效果就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI