JavaScript實(shí)現(xiàn)輪播圖效果代碼實(shí)例
這篇文章主要介紹了JavaScript實(shí)現(xiàn)輪播圖效果代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
HTML部分:
<!-- HTML部分 -->
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>輪播圖</title>
<link rel="stylesheet" type="text/css" href="css/demo06.css" rel="external nofollow" />
<script src="js/demo06.js"></script>
</head>
<body>
<div class="container">
<!-- 輪播圖區(qū)域 -->
<ul class="lbimg">
<li class="on" style="background-color: #898989;">輪播圖1</li>
<li style="background-color: #CD282B;">輪播圖2</li>
<li style="background-color: pink;">輪播圖3</li>
<li style="background-color: peachpuff;">輪播圖4</li>
<li style="background-color: palegoldenrod;">輪播圖5</li>
</ul>
<ol class="btn">
<li class="active">第1張</li>
<li>第2張</li>
<li>第3張</li>
<li>第4張</li>
<li>第5張</li>
</ol>
</div>
</body>
</html>
CSS部分
*{
margin: 0;
padding: 0;
list-style: none;
}
.container{
width: 600px;
height: 400px;
border: 4px double #FF6633;
margin: 0 auto;
}
/* 輪播圖 */
.lbimg li{
width: 100%;
height: 350px;
text-align: center;
line-height: 350px;
display: none;
font-size: 25px;
color: #FF6633;
}
.lbimg .on{
display: block;
}
.btn{
width: 100%;
height: 50px;
background-color: #3CBDFF;
display: flex;
}
.btn li{
flex: 1;
color: #fff;
font-weight: bold;
line-height: 50px;
text-align: center;
font-family: "楷體";
cursor: pointer;
}
.btn .active{
background-color: rgba(0,0,0,0.2);
transition: all ease-in-out 0.25s;
}
JavaScript部分
window.onload=function(){
var lbimg=document.querySelector(".lbimg");
var lbimgs=lbimg.querySelectorAll("li");
var btn=document.querySelector(".btn");
var btns=btn.querySelectorAll("li");
for (var i = 0; i < btns.length; i++) {
btns[i].index=i;
btns[i].onclick=function(){
clearInterval(timer);
for (var j = 0; j < lbimgs.length; j++) {
lbimgs[j].className="";
}
// 按鈕顏色跟著變化
for(var k=0;k<btns.length;k++){
btns[k].className="";
}
// 輪播同步,點(diǎn)擊后圖片的位置從點(diǎn)擊的地方開始輪播
index=this.index;
btns[this.index].className="active";
lbimgs[this.index].className="on";
timer=setInterval(autoPlay,1000);
}
}
var index=0;
// 自動(dòng)輪播
index++;
var timer=setInterval(autoPlay,1000);
function autoPlay(){
for (var i = 0; i < lbimgs.length; i++) {
lbimgs[i].className="";
}
for (var j = 0; j < btns.length; j++) {
btns[j].className="";
}
if(index==lbimgs.length-1){
index=0;
}else{
index++;
}
btns[index].className="active";
lbimgs[index].className="on";
}
// 鼠標(biāo)移動(dòng)時(shí)清除定時(shí)器
lbimg.onmouseover=function(){
clearInterval(timer);
}
lbimg.onmouseout=function(){
timer=setInterval(autoPlay,1000);
}
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Javascript 變量作用域 兩個(gè)可能會(huì)被忽略的小特性
關(guān)于Javascript,大家肯定都很熟悉啦,對(duì)于有編程經(jīng)驗(yàn)的朋友來說,Javascript很快就能上手,不過關(guān)于JS的變量作用域,還是有一點(diǎn)差別的。2010-03-03
layui.tree組件的使用以及搜索節(jié)點(diǎn)功能的實(shí)現(xiàn)
今天小編就為大家分享一篇layui.tree組件的使用以及搜索節(jié)點(diǎn)功能的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-09-09
JavaScript使用Promise實(shí)現(xiàn)分批處理接口請(qǐng)求
當(dāng)我們?cè)趯?shí)際項(xiàng)目中遇到需要批量發(fā)起上百條接口請(qǐng)求怎么辦呢,本文就來為大家介紹一下JavaScript如何使用Promise實(shí)現(xiàn)分批處理接口請(qǐng)求,需要的小伙伴可以參考一下2023-11-11
webpack 動(dòng)態(tài)批量加載文件的實(shí)現(xiàn)方法
這篇文章主要介紹了webpack 動(dòng)態(tài)批量加載文件的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03
使用JavaScript?將數(shù)據(jù)網(wǎng)格綁定到?GraphQL?服務(wù)的操作方法
GraphQL是管理JavaScript應(yīng)用程序中數(shù)據(jù)的優(yōu)秀工具,本教程展示了GraphQL和SpreadJS如何簡(jiǎn)單地構(gòu)建應(yīng)用程序,?GraphQL?和?SpreadJS都有更多功能可供探索,因此您可以做的事情遠(yuǎn)遠(yuǎn)超出了這個(gè)示例,感興趣的朋友一起看看吧2023-11-11
情人節(jié)單身的我是如何在敲完代碼之后收到12束玫瑰的(javascript)
這篇文章主要介紹了情人節(jié)單身的我是如何在敲完代碼之后收到12束玫瑰的,感興趣的朋友一起來學(xué)習(xí)下2015-08-08
javascript對(duì)下拉列表框(select)的操作實(shí)例講解
這篇文章主要介紹了javascript對(duì)下拉列表框(select)的操作。需要的朋友可以過來參考下,希望對(duì)大家有所幫助2013-11-11
javascript實(shí)現(xiàn)的動(dòng)態(tài)添加表單元素input,button等(appendChild)
這篇文章給大家介紹了javascript實(shí)現(xiàn)的動(dòng)態(tài)添加表單元素input,button等(appendChild)的實(shí)例代碼,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2007-11-11

