zoukankan      html  css  js  c++  java
  • 如何使用JS实现图片幻灯片自动播放

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8">
    		<title></title>
    			<script>
    //				所有需要展示的图片建立一个数组
    				var images = ["../img/001.jpg","../img/002.jpg","../img/003.jpg","../img/004.jpg"]
    			
    				var index = 0  //用于显示图片的索引
    //**********************************************
    
    //建立  上一张 按钮函数
    				function lastImg(){
    					var v_showImg = document.getElementById("showImg")
    				
    //下一张是index++   上一张是index--
    					index--
    					if(index<0){
    //数组中的最小下标为0,不可能有比0还小的下标,所以当index到达0这个下标位置的时候就已经到头,如果还要继续向前遍历则 index<0  此时我们使index = images.length-1(数组的最后一个下标) 实现重复展示图片效果
    						index = images.length-1
    					}
    					v_showImg.src = images[index]
    				}
    //**********************************************
    			//建立  下一张  函数
    			
    			function nextImg(){
    					var v_showImg = document.getElementById("showImg")
    					
    					index++
    					if(index>=images.length){
    //	因为数组的最大下标为length-1,所以length实际上是已经超出了数组最大下标,index中文含义为下标,所以当下标等于length-1的时候已经到了数组的最后一个元素位置,当index = lengeh的时候使index=0,这样可以循环点击
    						index = 0
    					}
    					v_showImg.src = images[index]    //这里展示的src链接实际上是遍历数组中的各项元素(各项元素为图片的超链接)
    				}
    			
    //**********************************************
    				//自动播放
    				var flag = true
    				
    //				建立播放函数(方法)
    				function autoPlay(){
    					if(!flag){
    						return 
    //这里可以这样理解:if内的flag为假的时候则结束,如果flag为真则跳到window.setTimeout()...这一步
    					}
    //			自己进行递归调用,然后再调用切换图片的方法		
    				window.setTimeout(autoPlay,3000)
    //		3000毫秒切换一次图片
    				nextImg()
    				}
    
    //停止播放
    			function stopAutoPlay(){
    				flag = false
    			}
    //开始播放
    			function startAutoPlay(){
    				flag = true
    				window.setTimeout(autoPlay,3000)
    			}
    			
    			
    			</script>
    	</head>
    	<body>
    		<img id = "showImg" src="../img/001.jpg"
    		 width="533px" height="300px" 
    		 
    		 onmouseover="stopAutoPlay()"
    		onmouseout="startAutoPlay()"		 
    		/>
    		<!--当鼠标移动到目标上时 = "停止播放"-->
    		 <!--当鼠标离开目标时 = "开始播放"-->
    		<br />
    		
    		<input type="button" value="上一张" onclick="lastImg()"/>
    		
    		<input type="button" value="下一张" onclick="nextImg()" />
    	</body>
    </html>
    
    
  • 相关阅读:
    订阅发布模式概念基础
    HTML与CSS之display:none
    HTML与CSS之导航栏
    微信小程序-笔记
    基于设计模式的用户管理
    微信小程序-开发组件-笔记1
    JavaScript异常处理
    微信小程序开发-笔记
    封装类实现增删改查
    脚本方式实现数据库增删改查
  • 原文地址:https://www.cnblogs.com/wgty/p/12810514.html
Copyright © 2011-2022 走看看