JS中的一个轮播图小demo

news/2024/7/19 15:08:21 标签: JS

一、手动轮播

1.首先你得准备几张规格,大小相同的图片(大于二张哦),命名有规律一点就ok了,下面我的图片位置及命名:

2.下面直接上小demo的代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>切换图片</title>
		<style>
			div{
				border: 1px solid white;
				width: 500px;
				height: 350px;
				margin: auto;      /*页面居中对齐*/
				text-align: center;  /*文字居中*/
			}
		</style>
		<script>
			var i=1; //从第一张开始
			function changeImg(){
			     i++;    //var i++;这样不对,不能重新定义,只需++就好
				document.getElementById("img1").src="../../img/"+i+".jpg";  //首先每个轮播图的命名都是有规律的,这样方便循环使用
				if(i==3){  //图片循环完了进行初始化
					i=0;
				}
			}
		</script>
	</head>
	<body>
		<div>
			<!--我的这个demo是手动的,自动可以加自动函数-->
			<input type="button" value="下一张"  onclick="changeImg()"/> 
			<!--图片路径根据自己实际情况来,在这显示的写第一张就行,其他的手动时递增就ok,所以说这个图片命名要有规律些,这样好处理-->
			<img src="../../img/1.jpg" width="100%" height="100%" id="img1" />
		</div>
	</body>
</html>

3.效果图:

 

 

总结:手动点击时才能改换图片;重要的还是当图片循环完需要初始化,及又要从第一张开始;如果要使自动轮播,需要调用函数setInterval("显示图片的函数",设置的间隔时间);当然这个是在当你加载这个页面的时候才触发的,虽然简单,哈哈,不足之处,请多指教!

二、自动轮播

前提是我调用了JS中的setInterval("显示图片的函数",设置的间隔时间)方法,用来做定时器,其实还可以用setTimeout()方法,这里不做细解释。下面来,不懂的可以查看JS的API

直接上代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script>
			//初始化方法
			function init(){
				/*setInterval功能用于循环,常常用于播放动画,或者时间显示。
                                 是在指定的周期内。按照参数的函数名去运行一个函数,它有两种语法。
                                  一种是基本用法,默认的语法。还有一种是专家模式的语法。*/
				window.setInterval("changeImg()",3000); //或者setInterval("changeImg()",3000);都可以
			}
			//书写函数
		    var i=0;
			function changeImg(){
				i++;
				//获取图片位置,并设置src属性值
				document.getElementById("img1").src="../img/"+i+".jpg";
				if(i==3){
					i=0;
				}
			}
		</script>
	</head>
	<body onload="init()">
		   <!--轮播图部分-->
			<div id="">
				<img src="../img/1.jpg" width="100%" id="img1"/>
			</div>
	</body>
</html>

 效果图:

注:我是在前面手动的基础上加了定时器,这里只附上一张图,其他的你自己可以下个小demo测试一下 。


http://www.niftyadmin.cn/n/1368080.html

相关文章

使用JS完成首页定时弹出广告图片

一.需求分析 在首页中的顶部做一个定时弹出广告图片。 二.技术分析 隐藏图片&#xff1a; display&#xff1a; none 定时操作&#xff1a; setInterval(“显示图片的函数”&#xff0c; 3000); 三.代码实现 1.javaScript部分代码 function init(){//书写轮图片显示的…

jQuery和JS在加载时的覆盖问题

代码示例&#xff1a; <!DOCTYPE html> <html><head><meta charset"UTF-8"><title></title><script type"text/javascript" src"../../js/jquery-1.8.3.js" ></script><script>window.o…

java中日期增加一天或一月的方法

直接上代码&#xff1a; //实现日期加一天的方法public static String addDay(String s, int n) { try { SimpleDateFormat sdf new SimpleDateFormat("yyyy-MM-dd"); Calendar cd Calendar.getInstance(); cd.setTime(sdf.parse(s)); cd.add(Calendar.…

Eclipse Maven Build命令执行无效解决方法

转载&#xff1a;https://blog.csdn.net/xiongyouqiang/article/details/78604630 现象 右键项目- run as – maven install 时&#xff0c;控制台没有任何响应 原因 Jdk没有配置maven的执行参数 解决方法 1.打开eclipse的window菜单&#xff1a; 2.接着选定maven项目使用的…

java中截取字符串最后一位

1.用substring()来截取 理论上它是按照字符串.substring(字符串.lastIndexOf("\\")1)这个格式来的&#xff0c;但是在涉及到特殊符号时需要用\\来转义&#xff0c;所以注意下。 例子&#xff1a; public class Test {public static void main(String[] args) {Stri…

Java使用SFTP和FTP两种连接方式实现对服务器的上传下载

转载路径&#xff1a;https://blog.csdn.net/a745233700/article/details/79322757 一、Java实现对SFTP服务器的文件的上传下载 1、添加maven依赖&#xff1a; <dependency><groupId>com.jcraft</groupId><artifactId>jsch</artifactId><v…

java中遍历集合时后,循环取值时,出现值被覆盖的情况

1.java面向对象之多new对象 在集合中循环赋值时舍不得new对象就会造成值被覆盖的情况&#xff0c;所以说对象就是用来new的。。。。。。 今天又一次遇到这个舍不得new对象的情况&#xff0c;debug了好久&#xff0c;苦恼无果&#xff0c;最后还是给蹦出来了&#xff0c;&…

Oracle中关于编辑表时锁死和不锁死的情况

一、编辑时锁死情况 1.首先比较常见的在Oracle中&#xff0c;你用PL/SQL工具编辑表时&#xff0c;就会造成表的锁死 如图示例&#xff1a; 也就是说在你关闭之后&#xff0c;别人才能操作 注&#xff1a;这种情况只有在你关闭之后&#xff0c;别人才能操作这个表&#xff0c;…