原生JavaScript實(shí)現(xiàn)輪播圖
更新時(shí)間:2021年01月10日 09:29:22 作者:棟棟很優(yōu)秀啊
這篇文章主要為大家詳細(xì)介紹了原生JavaScript實(shí)現(xiàn)輪播圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
本文實(shí)例為大家分享了JavaScript實(shí)現(xiàn)輪播圖的具體代碼,供大家參考,具體內(nèi)容如下
效果:

代碼:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
* {
margin: 0;
padding: 0;
}
ul,
li {
list-style: none;
}
.banner {
width: 1200px;
height: 535px;
border: 1px solid red;
margin: 0 auto;
position: relative;
}
.slider li {
position: absolute;
left: 0;
top: 0;
}
a {
width: 40px;
height: 50px;
background-color: rgba(0, 0, 0, 0.1);
font-size: 50px;
text-align: center;
line-height: 50px;
position: absolute;
text-decoration: none;
color: gray;
}
.btnl {
left: 0;
top: 50%;
margin-top: -15px;
}
.btnr {
right: 0;
top: 50%;
margin-top: -25px;
}
.tabs {
position: absolute;
bottom: 20px;
left: 50%;
margin-left: -75px;
}
.tabs li {
width: 15px;
height: 15px;
background-color: #ccc;
border-radius: 50%;
float: left;
margin-right: 10px;
}
</style>
</head>
<body>
<div class="banner">
<ul class="slider">
<li><img src="img/b1.jpg" alt="" /></li>
<li><img src="img/b2.jpg" alt="" /></li>
<li><img src="img/b3.jpg" alt="" /></li>
<li><img src="img/b4.jpg" alt="" /></li>
<li><img src="img/b5.jpg" alt="" /></li>
<li><img src="img/b6.jpg" alt="" /></li>
</ul>
<a href="javascript:void(0);" class="btnl">
<</a>
<a href="javascript:void(0);" class="btnr">></a>
<ul class="tabs">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</div>
<script type="text/javascript">
var banner = document.getElementsByClassName("banner")[0];
var slider = document.getElementsByClassName("slider")[0];
var li = slider.getElementsByTagName("li");
var btnl = document.getElementsByClassName("btnl")[0];
var btnr = document.getElementsByClassName("btnr")[0];
var tabs = document.getElementsByClassName("tabs")[0];
var btns = tabs.getElementsByTagName("li");
//初始化
btns[0].style.backgroundColor = "red";
for(var i = 0; i < li.length; i++) {
if(i == 0) {
continue;
} else {
li[i].style.opacity = 0;
}
}
var timer = setInterval(mover, 1000);
//聲明一個(gè)變量,代表當(dāng)前圖片的下標(biāo)
var num = 0;
function mover() {
num++;
if(num == li.length) {
num = 0;
}
for(var i = 0; i < li.length; i++) {
li[i].style.opacity = 0;
btns[i].style.backgroundColor = "#ccc";
}
li[num].style.opacity = 1;
btns[num].style.backgroundColor = "red";
}
function movel() {
num--;
if(num == -1) {
num = li.length - 1;
}
for(var i = 0; i < li.length; i++) {
li[i].style.opacity = 0;
btns[i].style.backgroundColor = "#ccc";
}
li[num].style.opacity = 1;
btns[num].style.backgroundColor = "red";
}
banner.onmouseover = function() {
clearInterval(timer)
}
banner.onmouseout = function() {
timer = setInterval(mover, 1000)
}
btnl.onclick = function(e) {
movel();
}
btnr.onclick = function(e) {
mover();
}
// 小圓點(diǎn)效果
for(var i = 0; i < btns.length; i++) {
btns[i].index = i;
btns[i].onmouseover = function() {
if(this.index == num) {
return;
} else {
for(var i = 0; i < li.length; i++) {
li[i].style.opacity = 0;
btns[i].style.backgroundColor = "#ccc";
}
li[this.index].style.opacity = 1;
btns[this.index].style.background="red";
num=this.index;
}
}
}
</script>
</body>
</html>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- js實(shí)現(xiàn)輪播圖的完整代碼
- 原生js實(shí)現(xiàn)輪播圖的示例代碼
- js實(shí)現(xiàn)支持手機(jī)滑動(dòng)切換的輪播圖片效果實(shí)例
- js實(shí)現(xiàn)點(diǎn)擊左右按鈕輪播圖片效果實(shí)例
- JS輪播圖實(shí)現(xiàn)簡(jiǎn)單代碼
- JS實(shí)現(xiàn)左右無(wú)縫輪播圖代碼
- JS實(shí)現(xiàn)自動(dòng)輪播圖效果(自適應(yīng)屏幕寬度+手機(jī)觸屏滑動(dòng))
- 原生js實(shí)現(xiàn)無(wú)限循環(huán)輪播圖效果
- 使用html+js+css 實(shí)現(xiàn)頁(yè)面輪播圖效果(實(shí)例講解)
- 基于vue.js輪播組件vue-awesome-swiper實(shí)現(xiàn)輪播圖
相關(guān)文章
uni-app返回上一個(gè)頁(yè)面并進(jìn)行頁(yè)面刷新的方法
這篇文章主要給大家介紹了關(guān)于uni-app返回上一個(gè)頁(yè)面并進(jìn)行頁(yè)面刷新的相關(guān)資料,返回上一頁(yè)面在uniapp有多種方法,文中給出了詳細(xì)的圖文示例,需要的朋友可以參考下2023-07-07
Save a File Using a File Save Dialog Box
Save a File Using a File Save Dialog Box...2007-06-06
對(duì)javascript的一點(diǎn)點(diǎn)認(rèn)識(shí)總結(jié)《javascript高級(jí)程序設(shè)計(jì)》讀書筆記
Javascript專為與網(wǎng)頁(yè)交互而設(shè)計(jì)的腳本語(yǔ)言,由下列三個(gè)部門構(gòu)造2011-11-11
JavaScript數(shù)據(jù)結(jié)構(gòu)之鏈表各種操作詳解
數(shù)據(jù)結(jié)構(gòu)是一種有效處理大量數(shù)據(jù)的手段,了解它的結(jié)構(gòu)和組成為我們提供了更有效的工具來(lái)設(shè)計(jì)與某些問題相關(guān)的產(chǎn)品。這次我們將進(jìn)行鏈表介紹,回顧它的特點(diǎn)和用途2022-10-10

