从零开始学HTML&&CSS&&JavaScript——JavaScript之Dom实例动画轮播

要求

1.鼠标移入图像区域时出现上一张和下一张的按钮,移除时消失
2.可以随时点击上一张或者下一张
3.点击下方的动画标识时,出现对应的图片

效果图

1.鼠标为移入时:
在这里插入图片描述

鼠标移入时:
在这里插入图片描述

代码

div的大小根据图片的大小设置,主要通过opacity属性和zIndex实现轮播
opacity属性:代表透明度,0为全透明,1是完全不透明
zIndex属性:决定了图片在z轴上的顺序,也就是哪一张图片在最上方,值越大,在上方

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<style type="text/css">
			*{
				padding: 0;
				margin: 0;
			}
			#contain{
				margin: 50px auto;
				width:721px;
				height: 447px;
			}
			#picture{
				position: absolute;
			}
			#picture img{
				position: absolute;
			}
			#button{
				position: absolute;
				top: 400px;
				left: 500px;
			}
			ul{
				clear: both;
				width: 150px;
				height: 17px;
			}
			li{
				display: inline-block;
				width: 17px;
				height: 17px;
				list-style: none;
				float: left;
				padding: 10px;
			}
			li img{
				width: 17px;
				height: 17px;
				border-radius: 50%;
			}
			#leftMove,
			#rightMove {
				display: inline-block;
				width: 40px;
				height: 40px;
			}
			
			#leftMove {
				position: absolute;
				margin-left: 60px;
				margin-top: 200px;
				background-image: url(nextAndPre.png);
				background-position-x: -15px;
				background-position-y: 105px;
				opacity: 0;
			}
			
			#rightMove {
				position: absolute;
				margin-top: 200px;
				margin-left: 580px;
				background-image: url(nextAndPre.png);
				background-position-x: -70px;
				background-position-y: 105px;
				opacity: 0;
			}
			#leftMove:hover,
			#leftMove:active {
				background-image: url(nextAndPre.png);
				background-position-x: -15px;
				background-position-y: 152px;
			}
			
			#rightMove:hover,
			#rightMove:active {
				background-image: url(nextAndPre.png);
				background-position-x: -70px;
				background-position-y: 152px
			}
			
		</style>
		<script type="text/javascript">
			window.onload=function(){
				 var au=document.getElementById("picture");
				 var lmove=document.getElementById("leftMove");
				var rmove=document.getElementById("rightMove");
				au.onmouseover=function(){
					lmove.style.opacity=3;
					rmove.style.opacity=3;
					lmove.style.zIndex=3;
					rmove.style.zIndex=3;
				}
				
				au.onmouseout=function(){
					lmove.style.opacity=0;
					rmove.style.opacity=0;
					lmove.style.zIndex=0;
					rmove.style.zIndex=0;
				}
				var i=0;
				var t;
				var p=0;
				var aLiimg=document.getElementById("ulo").getElementsByTagName("img");
				var img=document.getElementById("pic").getElementsByTagName("img");
					setInterval(function(){	
							if(i==0){
								aLiimg[aLiimg.length-1].src="p5.png";
								img[img.length-1].style.opacity=0;
								img[img.length-1].style.zIndex=1;
							}else{
								aLiimg[i-1].src="p5.png";
								img[i-1].style.opacity=0;
								img[i-1].style.zIndex=1;
							}
						aLiimg[i].src="p6.png";
						img[i].style.opacity=1;
						img[i].style.zIndex=2;
						i=i+1;
						if(i==img.length){
							i=0;
						}
				},1500)
			
					lmove.onclick=function(){
						for (var k=0;k<aLiimg.length;k++) {
							aLiimg[k].src="p5.png";
							img[k].style.opacity=0;
							img[k].style.zIndex=1;
						}
						if(i==0){
							i==img.length-2;
						}else
							i=i-2;
							aLiimg[i].src="p6.png";
							img[i].style.opacity=1;
							img[i].style.zIndex=2;
					}
					rmove.onclick=function(){
						for (var k=0;k<aLiimg.length;k++) {
							aLiimg[k].src="p5.png";
							img[k].style.opacity=0;
							img[k].style.zIndex=1;
						}
							aLiimg[i].src="p6.png";
							img[i].style.opacity=1;
							img[i].style.zIndex=2;
					}
						for (var k=0;k<aLiimg.length;k++) {
							aLiimg[k].index=k;
							aLiimg[k].onclick=function(k){
								for (var j=0;j<aLiimg.length;j++) {
									aLiimg[j].src="p5.png";
									img[j].style.opacity=0;
									img[j].style.zIndex=1;	
								}
							aLiimg[this.index].src="p6.png";
							img[this.index].style.opacity=1;
							img[this.index].style.zIndex=2;
							i=this.index;
							}
						}

			}
		</script>
	</head>
	<body>
		<div id="contain">
			<div id="picture">
				<div id="button">
					<ul id="ulo">
						<li><img src="p6.png" style="opacity:1;z-index: 3;"/></li>
						<li><img src="p5.png" style="opacity:1;z-index: 3;"/></li>
						<li><img src="p5.png" style="opacity:1;z-index: 3;"/></li>
						<li><img src="p5.png" style="opacity:1;z-index: 3;"/></li>
					</ul>
				</div>
				<a id="leftMove" ></a>
				<a id="rightMove"></a>
				<div id="pic">
				<img src="p1.png" style="opacity:1;z-index: 2;"/>
				<img src="p2.png" style="opacity:0;z-index: 1;"/>
				<img src="p3.png" style="opacity:0;z-index: 1;"/>
				<img src="p4.png" style="opacity:0;z-index: 1;"/>
				</div>	
			</div>
		</div>
	</body>
</html>

第一篇 JavaScript入门篇 第1章 初步了解JavaScript 1.1 JavaScript是什么 1.2 JavaScript能做什么 1.2.1 表单数据合法性验证 1.2.2 页面特效 1.2.3 交互式菜单 1.2.4 动态页面 1.2.5 数值计算 1.3 JavaScript编程起步 1.3.1 “Hello World!”程序 1.3.2 选择JavaScript脚本编辑器 1.4 如何引入JavaScript脚本代码 1.4.1 通过<script>与</script>标记对引入 1.4.2 通过<script>标记的src属性引入 1.4.3 通过JavaScript伪URL引入 1.4.4 通过HTML文档事件处理程序引入 1.5 嵌入JavaScript脚本代码的位置 1.5.1 在<head>与</head>标记对之间放置 1.5.2 在<body>与</body>标记对之间放置 1.5.3 在两个标记对之间混合放置 1.6 选择合适的浏览器 1.7 处理不支持JavaScript脚本的情况 1.7.1 使用<!——和——>标记对直接屏蔽法 1.7.2 使用<noscript>和</noscript>标记对给出提示信息 1.8 本章小结 1.9 本章习题 第2章 JavaScript编程的语言基础 第3章 JavaScript事件处理 第4章 JavaScript基于对象编程 第5章 文档对象模型(DOM) 第6章 String、Math、Array等数据对象 第7章 Window及相关顶级对象 第8章 Document对象 第9章 HTML元素对象 第二篇 JavaScript进阶篇 第10章 正则表达式 第11章 客户端与服务器端通信 第12章 JavaScript与Ajax技术 第13章 JavaScript错误与异常处理 第三篇 JavaScript实例篇 第14章 JavaScript与插件通信 第15章 JavaScript常用特效收集
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值