輪播圖自動(dòng)切換嗎?
站在用戶的角度思考問(wèn)題,與客戶深入溝通,找到云縣網(wǎng)站設(shè)計(jì)與云縣網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名與空間、網(wǎng)絡(luò)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋云縣地區(qū)。
script language =javascript
var curIndex=0;
//時(shí)間間隔 單位毫秒
var timeInterval=1000;
var arr=new Array();
arr[0]="1.jpg";
arr[1]="2.jpg";
arr[2]="3.jpg";
arr[3]="4.jpg";
arr[4]="5.jpg";
arr[5]="6.jpg";
arr[6]="7.jpg";
setInterval(changeImg,timeInterval);
function changeImg()
{
var obj=document.getElementById("obj");
if (curIndex==arr.length-1)
{
curIndex=0;
}
else
{
curIndex+=1;
}
obj.src=arr[curIndex];
}
/script
img id=obj src ="1.jpg" border =0 /
這樣能看懂嗎?
自己設(shè)置每張圖片切換的時(shí)間間隔,自己設(shè)置每張圖片的路徑,絕對(duì)、相對(duì)路徑都可以。
試試這個(gè)圖片輪播
有12345數(shù)字一起切換
鼠標(biāo)點(diǎn)一下數(shù)字會(huì)變換到另一張圖片,不點(diǎn)就會(huì)自動(dòng)換
里面有教程和源碼
現(xiàn)在沒(méi)空幫你寫代碼了,給你個(gè)思路自己寫吧!輪播肯定是要切換圖片的,并且一般切換的時(shí)候是從左到右或從右到左慢慢切的,所以你定義一個(gè)圖片地址數(shù)組,再定義兩個(gè)jlabel用來(lái)顯示圖片,一個(gè)JLabel顯示當(dāng)前圖片,另一個(gè)顯示最新圖片!好了,現(xiàn)在你定義一個(gè)timer定時(shí)器來(lái)切換,每隔兩秒,就判斷一下最新的圖片是哪個(gè)jlabel,然后將另一個(gè)jlabel填充新的圖片,然后setlocation()來(lái)移動(dòng)圖片,x坐標(biāo)每次向左幾個(gè)像素,直至移動(dòng)完成!這樣就是一次輪播,當(dāng)然你需要將兩個(gè)jlabel放到一個(gè)panel中,免得會(huì)出現(xiàn)第二個(gè)圖片多出一截在慢慢移動(dòng)的情況
最后一個(gè)參數(shù)表示時(shí)間,3000代表3秒,比如說(shuō)你設(shè)置成1000就是1秒,時(shí)間越大,速度越慢
function caroAnimate(imgNum) // 定義函數(shù),參數(shù)是imgNum,表示圖片數(shù)量
{
var currNav = 0; //定義變量,初始為0,表示當(dāng)前圖片是所有圖片中的第幾張。
var timer = "";// 切換時(shí)間,
var caroWidth = 320;//定義輪播圖片的寬度
var imgArea = $("#adveCaro");///獲取輪播圖片所在的父級(jí)元素
var navArr = $("#nav_adveCaro").find("li");// 查找li元素,統(tǒng)計(jì)有多少?gòu)垐D片
var delay = 5000;//延遲切換時(shí)間。5秒切換一次
var aniSpeed = 500;//動(dòng)畫時(shí)間。也就是0.5秒就切換完成
loopImg(); //調(diào)用looImg函數(shù),這里表示開始切換
startTimer(); // 設(shè)置動(dòng)畫切換時(shí)間
bindNavClick(); //調(diào)用用戶點(diǎn)擊事件,也就是用戶點(diǎn)擊哪張,就切換到哪張。
function loopImg(){//定義函數(shù)
imgArea.append(imgArea.children(":first").clone());///將列表中的第一張圖片克隆,并附加到前面定義的父級(jí)元素下。
}
function bindNavClick(){///定義點(diǎn)擊事件函數(shù)
navArr.click(function(){ ///點(diǎn)擊事件
var nav = navArr.index($(this));///設(shè)置當(dāng)前點(diǎn)擊的序號(hào),保存到nav這個(gè)變量里。
if(currNav != nav){
animate(nav);//判斷,如果點(diǎn)擊的位置不是上次點(diǎn)擊的,就開始切換
}
});
}
function startTimer(){//設(shè)置動(dòng)畫切換函數(shù)
timer = setInterval(autoAnimate, delay);//表示每隔多長(zhǎng)時(shí)間執(zhí)行autoAnimate這個(gè)函數(shù),也就是實(shí)現(xiàn)自動(dòng)播放
}
function restartTimer(){//設(shè)置重新開始時(shí)間段,也就是設(shè)置,當(dāng)播放到最后的時(shí)候,又重新來(lái)過(guò)
clearInterval(timer);//清除時(shí)間
startTimer();//重新設(shè)置時(shí)間
}
function autoAnimate(){//動(dòng)事切換主函數(shù)
if(currNav == 0){
imgArea.css("margin-left","0px");//判斷,如果是第一張,則設(shè)置圖片顯示區(qū)域左邊距為0px
}
currNav++;//播放序號(hào)自加1,也就是每執(zhí)行這個(gè)函數(shù),就自動(dòng)加1,相當(dāng)于currNav=currNav+1
imgArea.animate({"margin-left":caroWidth*(-currNav)}, aniSpeed);//以動(dòng)畫的形式,aniSpeed秒后,將左邊距設(shè)置父元素的寬度再減去當(dāng)前的序號(hào)。
if(currNav = imgNum){
currNav = 0;//判斷當(dāng)前位置,currNavimgNum表示,已經(jīng)到最后了,重新設(shè)置開始位置為0
}
changNav(currNav);//調(diào)用函數(shù),根據(jù)上下文,這個(gè)功能應(yīng)該是切換樣式用的
}
function animate(nav){
imgArea.stop().animate({"margin-left":caroWidth*(-nav)}, aniSpeed);//這是定義停止動(dòng)畫時(shí)執(zhí)行的特效,和面播放動(dòng)畫時(shí)的特效是一樣的。
currNav = nav;//設(shè)置當(dāng)前位置
changNav(nav);//改變樣式
restartTimer();///重置時(shí)間
}
function changNav(nav){//該函數(shù)是切換樣式用的
navArr.removeClass("ui-feedback");//首先將所有的圖片區(qū)域樣式清除
navArr.eq(nav).addClass("ui-feedback");//再給當(dāng)前的圖片區(qū)域加個(gè)樣式
}
}
新聞名稱:自動(dòng)輪播java代碼 輪播js代碼
分享URL:http://chinadenli.net/article42/hgesec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護(hù)、建站公司、網(wǎng)站設(shè)計(jì)、標(biāo)簽優(yōu)化、網(wǎng)站導(dǎo)航、App設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)