zoukankan      html  css  js  c++  java
  • js jq 简单做一个轮播图


    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> #box{ 730px; height: 450px; position: relative; left: 20%; } #loop{ 100%; height: 100%; } #loop img{ 100%; height: 100%; } ul{ height: 50px; position: absolute; left: 20%; bottom: 0; list-style: none; } li{ float: left; 50px; height: 50px; border-radius: 50%; background: #CCCCCC; margin-left: 15px; text-align: center; line-height: 50px; cursor: pointer; } .next{ 25px; height: 48px; opacity: .8; border-bottom-left-radius: 5px; border-top-left-radius: 5px; background: url(img/swit.png); background-position: -56px -5px !important; position: absolute; top: 40%; right: 0; cursor: pointer; } .prev{ 25px; height: 48px; opacity: .8; background: url(img/swit.png); background-position: -4px -5px !important; border-bottom-right-radius: 5px; border-top-right-radius: 5px; position: absolute; left: 0; top: 40%; cursor: pointer; } </style> </head> <body> <div id="box"> <div id="loop"> <img src="img/0.jpg" alt="" id="img"/> </div> <ul id="circle"> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> <li>6</li> </ul> <div class="next"></div> <div class="prev"></div> </div> <script type="text/javascript"> var img = document.getElementById("img"); // 定义轮播图 var list = document.getElementById("circle").getElementsByTagName("li"); //定义所有的导航标 var index = 0; list[index].style.background = 'red'; //使第一个导航的背景为红色 //制作一个定时器 var timer = setInterval(fun,1000); function fun(){ index++; //循环所有的导航 if(index == 6){ //不间断循环 index = 0; } img.src = "img/"+index+".jpg"; //改变图片src值 这里因为我的图片就是从0~5命名的(为了方便下面操作) 有需要可以拼接字符串 back(); //使所有的导航背景回到初始值 list[index].style.background = 'red'; //使当前的导航背景为红色 } //通过一个for循环实现鼠标移入移出改变导航背景和图片的src值 for(var i = 0; i<list.length; i++){ list[i].onmouseover = function(){ //鼠标移入触发函数 back(); //先使所有的导航背景回到初始值 this.style.background = 'red'; //给当前鼠标移入的导航背景替换颜色(这里的this可以输出一下看看是什么,对下面会好理解) clearInterval(timer); //清除定时器 index = this.innerHTML-1; //因为img是从 0~5命名的 导航内容是1~6所以减一 img.src = "img/"+index+".jpg"; } list[i].onmouseout = function(){ //鼠标移出触发函数重新开启定时器 timer = setInterval(fun,1000); } } //使所有的导航背景回到初始值 function back(){ for(var j=0; j<list.length; j++){ list[j].style.background = '#ccc'; } } //制作左右点击触发跳转事件 var next = document.getElementsByClassName("next")[0]; //定义下一页 var prev = document.getElementsByClassName("prev")[0]; //定义上一页 next.onclick = function nex(){ //下一页点击触发效果 index = index+1; //index加1即可 if(index == 6){ index = 0; } img.src = "img/"+index+".jpg"; clearInterval(timer); back() list[index].style.background = 'red'; } prev.onclick = function pre(){ //下一页点击触发效果 index = index-1; //index减1即可 if(index == -1){ index = 5; } img.src = "img/"+index+".jpg"; clearInterval(timer); back() list[index].style.background = 'red'; } next.onmouseout = function(){ //鼠标移出事件 继续滚动 clearInterval(timer); timer = setInterval(fun,1000); } prev.onmouseout = function(){ clearInterval(timer); timer = setInterval(fun,1000); } </script> </body> </html>

      jq

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8">
    		<title></title>
    	</head>
    	<style type="text/css">
    			#box{
    				 730px;
    				height: 450px;
    				position: relative;
    				left: 20%;
    			}
    			#loop{
    				 100%;
    				height: 100%;
    			}
    			#loop img{
    				 100%;
    				height: 100%;
    			}
    			ul{
    				height: 50px;
    				position: absolute;
    				left: 20%;
    				bottom: 0;
    				list-style: none;
    			}
    			li{
    				float: left;
    				 50px;
    				height: 50px;
    				border-radius: 50%;
    				background: #CCCCCC;
    				margin-left: 15px;
    				text-align: center;
    				line-height: 50px;
    				cursor: pointer;
    			}
    			.next{
    				 25px;
    				height: 48px;
    			    opacity: .8;
    			    border-bottom-left-radius: 5px;
    			    border-top-left-radius: 5px;
    				background: url(img/swit.png);
    				background-position: -56px -5px !important;
    				position: absolute;
    				top: 40%;
    				right: 0;
    				cursor: pointer;
    			}
    			.prev{
    				 25px;
    				height: 48px;
    			    opacity: .8;
    				background: url(img/swit.png);
    				background-position: -4px -5px !important;
    			    border-bottom-right-radius: 5px;
    			    border-top-right-radius: 5px;
    			    position: absolute;
    			    left: 0;
    			    top: 40%;
    			    cursor: pointer;
    			}
    		</style>
    	</head>
    	<body>
    		<div id="box">
    			<div id="loop">
    				<img src="img/0.jpg" alt="" id="img"/>
    			</div>
    			<ul id="circle">
    				<li>1</li>
    				<li>2</li>
    				<li>3</li>
    				<li>4</li>
    				<li>5</li>
    				<li>6</li>
    			</ul>
    			<div class="next"></div>
    			<div class="prev"></div>
    		</div>
    	</body>
    	<script type="text/javascript" src="js/jquery-3.1.1.min.js"></script>
    	<script type="text/javascript">
    		//使所有的导航背景回到初始值	
    		function back(){							
    			list.css("background",'#ccc' );
    			console.log(1)
    		}
    		var img = $("#img");     // 定义轮播图
    		var list = $("#circle li"); //定义所有的导航标
    		var index = 0;							
    		list.eq(index).css("background",'red' );	//使第一个导航的背景为红色
    		//制作一个定时器
    		var timer = setInterval(fun,1000);
    		function fun(){							
    			index++;							//循环所有的导航
    			if(index == 6){						//不间断循环
    				index = 0;
    			}
    			img.prop("src","img/"+index+".jpg");		//改变图片src值 这里因为我的图片就是从0~5命名的(为了方便下面操作) 有需要可以拼接字符串
    			back();									//使所有的导航背景回到初始值
    			list.eq(index).css("background",'red' );	//使当前的导航背景为红色
    		}
    		list.mouseover(function(){		//鼠标移入触发函数
    			back();								//先使所有的导航背景回到初始值
    			$(this).css("background",'red' );		//给当前鼠标移入的导航背景替换颜色(这里的this可以输出一下看看是什么,对下面会好理解)
    			clearInterval(timer);				//清除定时器
    			index = this.innerHTML-1;			//因为img是从 0~5命名的  导航内容是1~6所以减一 
    			img.prop("src","img/"+index+".jpg");		
    			
    		})
    		list.mouseout(function(){		//鼠标移出触发函数重新开启定时器
    			timer = setInterval(fun,1000);
    		})
    		//制作左右点击触发跳转事件
    		var next = $(".next");	//定义下一页
    		var prev = $(".prev");	//定义上一页
    		next.click(function nex(){ 							//下一页点击触发效果	
    			index = index+1;									//index加1即可		
    			if(index == 6){										
    				index = 0;
    			}
    			img.prop("src","img/"+index+".jpg");
    			clearInterval(timer);					
    			back();
    			list.eq(index).css("background",'red' );
    		})
    		prev.click(function pre(){							//下一页点击触发效果	
    			index = index-1;									//index减1即可				
    			if(index == -1){
    				index = 5;
    			}
    			img.prop("src","img/"+index+".jpg");
    			clearInterval(timer);
    			back();
    			list.eq(index).css("background",'red' );
    		})
    		next.mouseout(function(){							//鼠标移出事件 继续滚动
    			clearInterval(timer);
    			timer = setInterval(fun,1000); 
    		})
    		prev.mouseout(function(){
    			clearInterval(timer);
    			timer = setInterval(fun,1000); 
    		})
    	</script>
    </html>
  • 相关阅读:
    Delphi编写星光效果
    网格动画
    在窗体边框上画图
    algebra单元
    CMOS单元
    类似于Split(VB)的函数
    利用PHPLIB加入模板功能
    随机产生一个中文
    测试PHP
    获得指定后缀名的文件数
  • 原文地址:https://www.cnblogs.com/sw-3/p/9726754.html
Copyright © 2011-2022 走看看