国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JavaScript > 正文

關(guān)于網(wǎng)頁(yè)中的無(wú)縫滾動(dòng)的js代碼

2019-11-20 09:44:36
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

隨便打開(kāi)一個(gè)網(wǎng)頁(yè),基本上都會(huì)看到無(wú)縫滾動(dòng)或者輪播圖,比如淘寶還有360官網(wǎng)的首頁(yè)

觀察這些輪播圖可以發(fā)現(xiàn)圖片可以來(lái)回循環(huán)地切換,那么是怎樣做到的呢?

做到輪播圖或者說(shuō)無(wú)縫滾動(dòng)主要有兩種方式,一種是通過(guò)對(duì)圖片的明暗即透明圖的改變來(lái)顯示或隱藏圖片,另一種是通過(guò)運(yùn)動(dòng)框架,將圖片顯示在可視區(qū)域。這兩種方式都會(huì)用到同一個(gè)東西,那就是定時(shí)器。

JavaScript中的定時(shí)器有兩種,1.setInterval();2.setTimeout();相對(duì)應(yīng)的關(guān)閉定時(shí)器也有兩種方法,clearInterval()和clearTimeout()。兩種定時(shí)器的區(qū)別是前者可以執(zhí)行多次,而后者只執(zhí)行一次。

這次只說(shuō)無(wú)縫滾動(dòng),下篇介紹輪播圖。

實(shí)現(xiàn)簡(jiǎn)單的無(wú)縫滾動(dòng)的代碼如下:

/*完整的代碼*/<!DOCTYPE html><html lang="en"><head><meta charset="utf-8" /><style>div{position:relative;width:630px;height:220px;border:solid 2px black;overflow:hidden;}ul{position:absolute;top:10px;left:0;}img{width:200px;height:200px;float:left;margin-right:10px;border:2px solid yellow;}li{list-style:none;margin:0;padding:0;}ul{margin:0;padding:0;}</style><script>window.onload=function(){var oUl=document.getElementById("main");var aLi=oUl.getElementsByTagName("img");var oInput=document.getElementsByTagName("input")[0];oUl.innerHTML+=oUl.innerHTML;oUl.style.width=aLi.length*aLi[0].offsetWidth+"px";var timer=null;setInterval(function(){oUl.style.left=oUl.offsetLeft-8+"px";if(oUl.offsetLeft<-oUl.offsetWidth/2){oUl.style.left="0px";}},30);};</script></head><body><div><ul id="main"><li><img src="../img/1.jpg"></li><li><img src="../img/2.jpg"></li><li><img src="../img/3.jpg"></li><li><img src="../img/4.jpg"></li><li><img src="../img/9.jpg"></li></ul></div></div></body></html>

/-----------------------------------------------------------------------------------------------------------------------------------------------------------/

無(wú)縫滾動(dòng)的布局比較簡(jiǎn)單,下面主要講解JS部分內(nèi)容:

首先分別獲取到ul和li,再將ul里面的內(nèi)容復(fù)制一份,通過(guò)js動(dòng)態(tài)修改ul的寬度(如果要做到上下無(wú)縫滾動(dòng),則修改其寬度),最后開(kāi)定時(shí)器,代碼中是每隔30微秒ul向左移動(dòng)8個(gè)像素,而當(dāng)ul的可視左邊距小于ul總長(zhǎng)度的一半時(shí),使其變?yōu)?。由于計(jì)算機(jī)的運(yùn)行速度非??欤詭缀醺杏X(jué)不到這一變化。我們看到的只是圖片不斷地向左移動(dòng),無(wú)休止的運(yùn)動(dòng)。

以上所述是小編給大家介紹的關(guān)于網(wǎng)頁(yè)中的無(wú)縫滾動(dòng)的js代碼,希望對(duì)大家有所幫助!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 杭州市| 尚志市| 江阴市| 清流县| 博爱县| 图们市| 瓦房店市| 左云县| 满城县| 佛冈县| 科技| 怀集县| 定边县| 宁城县| 新龙县| 遂平县| 同德县| 奎屯市| 榆林市| 望谟县| 怀集县| 鄂伦春自治旗| 龙江县| 项城市| 磐石市| 金华市| 福建省| 福贡县| 福建省| 惠水县| 苏州市| 年辖:市辖区| 通渭县| 南乐县| 富顺县| 昌都县| 云龙县| 奇台县| 隆昌县| 常宁市| 乌拉特后旗|