这篇文章主要介绍“如何用js实现简单的图片轮播功能”,在日常操作中,相信很多人在如何用js实现简单的图片轮播功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何用js实现简单的图片轮播功能”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
设计思路:利用js当中的定时器实现图片轮播的效果,将所有图片放入img文件夹下,我当时是存放了三张照片。然后将三张照片分别放入三个div,每一个div显示和隐藏都是靠定时器进行控制,左下角有三个数字的div代表这是第几张图片,一共有三张图片所以是三个div。
代码:
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <style type="text/css"> .imgbox{ width: 100%; height:400px; background-color: black; transform: 1s; } .img{ width: 100%; height:100%; background-image: url(img/37fa7b724f5c49cd8c2d0efad885f1a8.jpeg); background-repeat:no-repeat; background-size:cover ; } .img0{ width: 100%; height:100%; background-image: url(img/37fa7b724f5c49cd8c2d0efad885f1a8.jpeg); background-repeat:no-repeat; background-size:100% ; } .img1{ width: 100%; height:100%; background-image: url(img/5572568_110213373115_2.jpg); background-repeat:no-repeat; background-size:100% ; } .img2{ width: 100%; height:100%; background-image: url(img/5875f5fb7a8f8.jpg); background-repeat:no-repeat; background-size:100% ; } .img3{ width: 100%; height:100%; background-image: url(img/980.jpg); background-repeat:no-repeat; background-size:100% ; } ul{ margin-left:-30px ; list-style-type: none; position: relative; margin-top: -100px; line-height: 50px; } ul li{ float: left; width: 50px; height:50px; border:1px solid #000000; text-align: center; background-color: aliceblue; } .div{ background-color: orange; line-height: 50px; } .div1{ background-color: gainsboro; line-height: 50px; } </style> <script type="text/javascript"> var i=0; function imgbox(){ i++; if(i<4){ document.getElementById("img").className="img"+i; if(i==1){ document.getElementById("one").className="div"; document.getElementById("two").className="div1"; document.getElementById("three").className="div1"; } if(i==2){ document.getElementById("one").className="div1"; document.getElementById("two").className="div"; document.getElementById("three").className="div1"; } if(i==3){ document.getElementById("one").className="div1"; document.getElementById("two").className="div1"; document.getElementById("three").className="div"; } } if(i==4){ i=0; clearInterval('imgbox()'); } } setInterval('imgbox()',1000); </script> </head> <body> <div class="imgbox"> <div class="img" id="img"></div> <ul id="ul"> <li id="one">1</li> <li id="two">2</li> <li id="three">3</li> </ul> </div> </body> </html>
认识HTML
HTML,就是我们所说的网页,网页的文件格式就是.html格式。在我们眼里,它是一种超文本语言,不需要额外的编译或者处理,写好,打开,就是一个网页。
Html组成由许多标签组成如<p>、<h>、<input>、<img>......,还有一些语义化标签如<header>、<footer>、<nav>....。
什么是js:
js(JavaScript)一种直译式脚本语言。JavaScript脚本可直接放在HTML语言中,在支持js的浏览器上运行。广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。当在浏览网页时做了某种操作就产生一个事件,JavaScript所编写的程序可对相应的事件做出反应。
js定时器:定义定时器setInterval('imgbox()',1000);每隔一秒执行一次imgbox方法, imgbox方法包含图片的改变,还有div颜色的改变
启用定时器
window对象提供了两个方法来实现定时器的效果,分别是window.setTimeout()和window.setInterval。其中前者可以使一段代码在指定时间后运行;而后者则可以使一段代码每过指定时间就运行一次。它们的原型如下:
window.setTimeout(code,millisec); window.setInterval(code,millisec);
其中,code可以是用引号括起来的一段代码,也可以是一个函数名,到了指定的时间,系统便会自动调用该函数,当使用函数名作为调用句柄时,不能带有任何参数;而使用字符串时,则可以在其中写入要传递的参数。两个方法中的第二个参数是millisec,表示延时或者重复执行的毫秒数。
具体写法如下:
函数名,不带参数setTimeout (test,1000);字符串,可以执行的代码setTimeout ('test()',1000);匿名函数setTimeout (function(){},1000); 注:setInterval的用法与setTimeout一样
调用函数,带参数setTimeout ('test(参数)',1000);
div布局:使用ul,li进行布局
修改样式如下:
ul{ margin-left:-30px ;//据左部边距 list-style-type: none;//去除默认ul样式 position: relative;//采用相对定位 margin-top: -100px;//据顶部边距 line-height: 50px;//行高 } ul li{ float: left;//浮动 width: 50px; height:50px; border:1px solid #000000;//边框 text-align: center;//文字居中 background-color: aliceblue; }
Html结构:
<div> <div id="img"></div> <ul id="ul"> <li id="one">1</li> <li id="two">2</li> <li id="three">3</li> </ul> </div>
Img为大的div盒子,img为图片,<ul>里面包含li为第几张图片。
到此,关于“如何用js实现简单的图片轮播功能”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。