JS 實(shí)現(xiàn)banner圖片輪播效果(鼠標(biāo)事件)
一.要實(shí)現(xiàn)的效果
1.點(diǎn)擊左右可切換圖片
2.點(diǎn)擊小圓點(diǎn) 可切換圖片
二.效果圖

三.代碼
1.css
<style type="text/css">
body,img,span,ul,li{margin: 0;padding: 0;}
#div1{width: 600px;height: 350px;margin: 150px auto;border: 10px solid #eee;position: relative;}
img{width: 600px;height: 350px;}
span{display: inline-block;position: absolute;width: 50px;height: 50px;border-radius: 25px;background:rgba(0,0,0,.3); font-size: 30px;line-height: 50px;text-align: center;cursor: pointer;color: white;}
span:hover{background:rgba(255,255,255,.5);color:black;transform:scale(1.3);}
span#L{left: 10px;top: 150px;}
span#R{right: 10px;top: 150px;}
#div1 #ul{position: absolute;bottom: 10px;left: 250px;width: 125px;height: 20px;}
#div1 #ul li{list-style: none;float: left;height: 20px;width: 20px;border-radius: 10px;background:rgba(255,255,255,.5); margin-right: 5px;cursor: pointer;}
#div1 #ul .active{background:rgba(0,0,0,.5);}
</style>
2.html
<body>
<div id="div1">
<img src="" alt="">
<span id="L"><</span>
<span id="R">></span>
<ul id="ul">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</div>
</body>
3.js
<script type="text/javascript">
window.onload=function(){
var div1=document.getElementById('div1');
var oImg=div1.getElementsByTagName('img')[0];
var spanL=document.getElementById('L');
var spanR=document.getElementById('R');
var oUl=document.getElementById('ul');
var oLi=oUl.getElementsByTagName('li');
var arrImg=['img2/1.jpg','img2/2.jpg','img2/3.jpg','img2/4.jpg','img2/5.jpg'];
var num=0;
var oldLi=0;
function fn(num) {
oImg.src=arrImg[num];
}
fn(0);
function fnLi(num){
oLi[oldLi].className='';
oLi[num].className='active';
oldLi=num;
}
fnLi(0);
/*點(diǎn)擊左右span圖片切換*/
/*點(diǎn)擊左右span時(shí)li切換*/
spanL.onclick=function(){
if (num<1) {
num=arrImg.length-1;
fn(num);
fnLi(num);
}else{
num--;
fnLi(num);
fn(num);
}
}
spanR.onclick=function(){
if (num==arrImg.length-1) {
num=0;
fn(num);
fnLi(num);
}else{
num++;
fnLi(num);
fn(num);
}
}
/*點(diǎn)擊li實(shí)現(xiàn)圖片切換*/
for (var i = 0; i < oLi.length; i++) {
oLi[i].index=i;
oLi[i].onclick=function(){
fn(this.index);
fnLi(this.index);
}
}
}
</script>
總結(jié)
以上所述是小編給大家介紹的JS 實(shí)現(xiàn)banner圖片輪播效果(鼠標(biāo)事件),希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
javascript仿163網(wǎng)盤無刷新文件上傳系統(tǒng)
這個(gè)仿163網(wǎng)盤無刷新文件上傳系統(tǒng),并沒有用使用.net的控件,完全的手工制作。2008-10-10
JAVASCRIPT車架號(hào)識(shí)別/驗(yàn)證函數(shù)代碼 汽車車架號(hào)驗(yàn)證程序
偶然中在CSDN里找到C#版的驗(yàn)證程序,因此改編了一版JS版本,相信會(huì)對(duì)大家有用2012-01-01
js動(dòng)態(tài)添加input按鈕并給按鈕增加onclick的函數(shù)事件(帶參數(shù))完整實(shí)例
這篇文章主要介紹了js動(dòng)態(tài)添加input按鈕并給按鈕增加onclick的函數(shù)事件,結(jié)合完整實(shí)例形式分析了javascript頁面元素屬性動(dòng)態(tài)操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2023-07-07
如何使用JavaScript和XLSX.js將數(shù)據(jù)導(dǎo)出為Excel文件
這篇文章主要給大家介紹了關(guān)于如何使用JavaScript和XLSX.js將數(shù)據(jù)導(dǎo)出為Excel文件的相關(guān)資料,xlsx.js基于JavaScript的Excel文件讀寫庫 如果你需要在瀏覽器端處理Excel文件,那么xlsx.js可能是一個(gè)不錯(cuò)的選擇,需要的朋友可以參考下2024-05-05
showModalDialog模態(tài)對(duì)話框的使用詳解以及瀏覽器兼容
showModalDialog是jswindow對(duì)象的一個(gè)方法,和window.open一樣都是打開一個(gè)新的頁面。區(qū)別是:showModalDialog打開子窗口后,父窗口就不能獲取焦點(diǎn)了(也就是無法操作了)2014-01-01
一文教會(huì)你如何在JavaScript中使用展開運(yùn)算符
展開運(yùn)算符(spread operator)允許一個(gè)表達(dá)式在某處展開,下面這篇文章主要給大家介紹了關(guān)于如何通過一文教會(huì)你如何在JavaScript中使用展開運(yùn)算符的相關(guān)資料,需要的朋友可以參考下2022-10-10
echarts實(shí)現(xiàn)3d柱狀圖的2種方式舉例
echarts3D效果柱狀圖的實(shí)現(xiàn),這個(gè)太難了,我花了兩天終于調(diào)成我想要的效果啦,要是官網(wǎng)上有例子就好了,太難調(diào)了,下面這篇文章主要給大家介紹了關(guān)于echarts實(shí)現(xiàn)3d柱狀圖的2種方式,需要的朋友可以參考下2023-02-02
JavaScript之map reduce_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要為大家詳細(xì)介紹了JavaScript之map reduce的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
HTML+JavaScript模擬實(shí)現(xiàn)簡單的時(shí)鐘效果
在這篇文章中,主要將向大家展示如何使用?HTML、CSS?和?JavaScript代碼制作模擬時(shí)鐘,文中的示例代碼講解詳細(xì),感興趣的可以了解一下2022-08-08

