最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時(shí)間:2016年06月09日 14:46:46   作者:QiScript  
隨便打開(kāi)一個(gè)網(wǎng)頁(yè),基本上都會(huì)看到無(wú)縫滾動(dòng)或者輪播圖,比如淘寶還有360官網(wǎng)的首頁(yè)。那么這些滾動(dòng)效果是怎么實(shí)現(xiàn)的呢?下面小編給大家分享關(guān)于網(wǎng)頁(yè)中的無(wú)縫滾動(dòng)的js代碼,感興趣的朋友一起看下吧

隨便打開(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)行速度非常快,所以幾乎感覺(jué)不到這一變化。我們看到的只是圖片不斷地向左移動(dòng),無(wú)休止的運(yùn)動(dòng)。

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

相關(guān)文章

  • Javascript 原型和繼承(Prototypes and Inheritance)

    Javascript 原型和繼承(Prototypes and Inheritance)

    前面我們看到了如何使用 constructor 來(lái)初始化對(duì)象。如果這樣做,那么每一個(gè)創(chuàng)建的新對(duì)象都會(huì)對(duì)那些相同的屬性,方法建立一個(gè)獨(dú)立的副本。而實(shí)際上有更加有效的方法來(lái)指定方法,常量,以及其他一些可被所有該類的對(duì)象共享的屬性。
    2009-04-04
  • 一文詳解Vue中插槽的具體使用

    一文詳解Vue中插槽的具體使用

    Vue的插槽(Slot)是一種可以讓父組件向子組件傳遞內(nèi)容的機(jī)制,這篇文章主要通過(guò)一些簡(jiǎn)單的示例為大家介紹了插槽的具體使用,感興趣的小伙伴可以了解一下
    2023-06-06
  • 一次Webpack配置文件的分離實(shí)戰(zhàn)記錄

    一次Webpack配置文件的分離實(shí)戰(zhàn)記錄

    這篇文章主要給大家介紹了關(guān)于一次Webpack配置文件的分離實(shí)戰(zhàn)記錄,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11
  • 二級(jí)域名轉(zhuǎn)向類

    二級(jí)域名轉(zhuǎn)向類

    二級(jí)域名轉(zhuǎn)向類...
    2006-11-11
  • JS獲取節(jié)點(diǎn)的兄弟,父級(jí),子級(jí)元素的方法

    JS獲取節(jié)點(diǎn)的兄弟,父級(jí),子級(jí)元素的方法

    本篇文章主要是對(duì)JS獲取節(jié)點(diǎn)的兄弟,父級(jí),子級(jí)元素的方法進(jìn)行了詳細(xì)的介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助
    2014-01-01
  • JavaScript數(shù)據(jù)扁平化詳解

    JavaScript數(shù)據(jù)扁平化詳解

    這篇文章主要為大家介紹了JavaScript數(shù)據(jù)扁平化,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2021-12-12
  • 淺析微信小程序自定義日歷組件及flex布局最后一行對(duì)齊問(wèn)題

    淺析微信小程序自定義日歷組件及flex布局最后一行對(duì)齊問(wèn)題

    這篇文章主要介紹了微信小程序自定義日歷組件及flex布局最后一行對(duì)齊問(wèn)題,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • JavaScript 中字符串和數(shù)組的概念解析與多角度對(duì)比區(qū)分

    JavaScript 中字符串和數(shù)組的概念解析與多角度對(duì)比區(qū)分

    JavaScript中的字符串和數(shù)組是兩種重要的數(shù)據(jù)結(jié)構(gòu),各有特點(diǎn)和應(yīng)用場(chǎng)景,字符串主要用于文本處理,是不可變的;數(shù)組用于存儲(chǔ)有序集合,是可變的,理解它們的區(qū)別和應(yīng)用場(chǎng)景,有助于編寫(xiě)更高效和易維護(hù)的代碼,感興趣的朋友跟隨小編一起看看吧
    2024-11-11
  • JavaScript數(shù)組去重的六種方式

    JavaScript數(shù)組去重的六種方式

    在平時(shí)的前端開(kāi)發(fā)中,常常會(huì)遇到數(shù)組去重的場(chǎng)景,比如表單校驗(yàn)重復(fù)的數(shù)據(jù),有重復(fù)數(shù)據(jù)不讓提交,或者對(duì)后端返回的數(shù)據(jù)進(jìn)行去重展示等,同時(shí)它也是一道經(jīng)典的前端JavaScript基礎(chǔ)面試題,本期一起來(lái)帶大家看看去重的各種花樣方法,需要的朋友可以參考下
    2024-12-12
  • 一個(gè)簡(jiǎn)易的js圖片輪播效果

    一個(gè)簡(jiǎn)易的js圖片輪播效果

    這篇文章主要為大家詳細(xì)介紹了一個(gè)簡(jiǎn)易的js圖片輪播效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07

最新評(píng)論

东明县| 福鼎市| 贞丰县| 新平| 临颍县| 津市市| 天等县| 榆林市| 若羌县| 四子王旗| 扎兰屯市| 库尔勒市| 离岛区| 丹寨县| 盐边县| 苗栗市| 永寿县| 山东省| 景谷| 阿坝县| 桃江县| 西盟| 枝江市| 荃湾区| 河池市| 临猗县| 西平县| 修水县| 岳池县| 安图县| 慈利县| 囊谦县| 灵山县| 利辛县| 镇坪县| 突泉县| 龙山县| 临夏市| 汉沽区| 甘南县| 隆回县|