国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

原生Js 實(shí)現(xiàn)的簡單無縫滾動(dòng)輪播圖的示例代碼

瀏覽:100日期:2024-03-26 16:37:56

   簡單無縫滾動(dòng)輪播圖存在很多漏洞,就是后期增加圖片時(shí)會(huì)很不方便,需要改動(dòng)的地方也很多,耦合性也很強(qiáng),只適用于一部分程序,所以我們可以通過改動(dòng)圖片結(jié)構(gòu)和計(jì)算折算點(diǎn)的方式,升級(jí)代碼。

      原簡單的滾動(dòng)輪播代碼

<html><head> <meta charset='UTF-8'> <meta http-equiv='X-UA-Compatible' content='IE=edge'> <meta name='viewport' content='width=device-width, initial-scale=1.0'> <title>Document</title> <style>*{ margin: 0; padding: 0;}.scroll{ position: relative; width: 830px;/*展示寬度 展示4個(gè)圖+3個(gè)邊框=830*/ height: 130px; border: 10px solid rgb(15, 15, 15); margin: 100px auto; overflow: hidden;}.scroll ul{ position: absolute; width: 5000px;/*ul能存下所有l(wèi)i的寬*/ height: 130px; top: 0; left: 0;}.scroll ul li{ float: left; width: 200px; height: 130px; margin-right: 10px; overflow: hidden;} </style></head><body> <div class='scroll'><ul id='munit'> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/3.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/4.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/5.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/6.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/7.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/8.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/9.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/3.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/4.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/5.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/6.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/7.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/8.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/9.png' alt=''></li></ul> </div> <script>//獲取元素var scroll = document.getElementById('scroll');var munit = document.getElementById('munit');var li = munit.children;// 進(jìn)行滾動(dòng)var nowLeft = 0;//要找到ul元素運(yùn)動(dòng)的折返點(diǎn)var back = -1470;//圖和邊框是li的寬度,展示的有4張圖,所以折返點(diǎn)就是1260//定時(shí)器var timer = setInterval(run,20);// 鼠標(biāo)移上scroll停止scroll.onmouseover = function(){ clearInterval(timer);}// 移開輪播scroll.onmouseout = function(){ timer = setInterval(run,20);}//運(yùn)動(dòng)函數(shù)function run(){ nowLeft -= 2; //判斷是否走到了折返點(diǎn),走到了,則瞬間切換到0位置 if(nowLeft <= back){nowLeft = 0; } munit.style.left = nowLeft + 'px';} </script></body></html>

   在<div id='scroll'>結(jié)構(gòu)給ul新增的一個(gè)父級(jí)div,這樣之后添加圖片,后期通過獲取ul寬度就可以了計(jì)算折算點(diǎn)   1、折返點(diǎn)計(jì)算需要通過Js自動(dòng)計(jì)算   var back = -munit.offsetWidth;//元素左移,值為負(fù)數(shù)   2、自動(dòng)生成另一組對應(yīng)的圖片結(jié)構(gòu) li   munit.innerHTML = munit.innerHTML + munit.innerHTML;//這樣就會(huì)增加一組li標(biāo)簽,后期增加圖片也會(huì)隨之增加修改部分代碼,

css改寫部分: /*給ul新增的一個(gè)父級(jí)div,這樣添加圖片后期獲取ul寬度 就可以了 */.scroll .inner{ position: relative; width: 5000px;}.scroll ul{ position: absolute; height: 130px; top: 0; left: 0; list-style: none;body改寫部分: <body> <div class='scroll'> <div class='inner'> <ul id='munit'> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/3.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/4.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/5.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/6.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/7.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/8.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/9.png' alt=''></li> <li><img src='http://www.cgvv.com.cn/BOM/shuzi/10.png' alt=''></li> </ul> </div> </div>JS改寫部分:<script>//獲取元素var scroll = document.getElementById('scroll');var munit = document.getElementById('munit');//改寫部分//1 折返點(diǎn)計(jì)算需要通過Js自動(dòng)計(jì)算var back = -munit.offsetWidth;//元素左移,值為負(fù)數(shù)//2 自動(dòng)生成另一組對應(yīng)的圖片結(jié)構(gòu) limunit.innerHTML = munit.innerHTML + munit.innerHTML;// 進(jìn)行滾動(dòng)var nowLeft = 0;//定時(shí)器var timer = setInterval(run,20);// 鼠標(biāo)移上scroll停止scroll.onmouseover = function(){ clearInterval(timer);}// 移開輪播scroll.onmouseout = function(){ timer = setInterval(run,20);}//運(yùn)動(dòng)函數(shù)function run(){ nowLeft -= 1; //判斷是否走到了折返點(diǎn),走到了,則瞬間切換到0位置 if(nowLeft <= back){nowLeft = 0; } munit.style.left = nowLeft + 'px';} </script></body></html>

這樣的代碼耦合性低,也適合任意個(gè)數(shù)的li、任意大小的圖片的加入

以上就是原生Js 實(shí)現(xiàn)的簡單無縫滾動(dòng)輪播圖的示例代碼的詳細(xì)內(nèi)容,更多關(guān)于Js 實(shí)現(xiàn)的簡單無縫滾動(dòng)輪播圖的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 萌白酱福利视频 | 中国美女隐私无遮挡免费视频 | 99精品国产综合久久久久 | 97在线视频免费观看费观看 | 中文字幕无线精品乱码一区 | 亚洲久久成人 | 长腿校花被啪到腿软视频 | 免费在线一级毛片 | 亚洲精品国产综合一线久久 | 久久怡红院亚欧成人影院 | 一区二区三区欧美视频 | 国产成人精品亚洲一区 | 草草视频在线观看 | 成人中文字幕在线 | 成人欧美精品一区二区不卡 | 亚洲精品自产拍在线观看 | 白浆在线视频 | 欧美日本色 | 一本色道久久综合 | 中文字幕视频网站 | 国产激爽大片在线播放 | 男人天堂视频在线 | 亚洲美女自拍视频 | 中文字幕一区二区精品区 | 亚洲精品午夜 | 久久国产免费一区 | 国产男女视频在线观看 | 亚洲小视频在线播放 | 熟女毛片 | 午夜免费的国产片在线观看 | 国产一精品一aⅴ一免费 | 99av在线播放 | 欧美一区二区二区 | 久久成人国产 | 色青青草原桃花久久综合 | 91精品免费看 | 成网站在线观看人免费 | 国产国产人免费人成成免视频 | 男女扒开双腿猛进入免费网站 | 国产亚洲精品美女一区二区 | 理伦毛片 |