JavaScript實(shí)現(xiàn)長(zhǎng)圖滾動(dòng)效果
本文實(shí)例為大家分享了JavaScript之長(zhǎng)圖滾動(dòng)的具體代碼,供大家參考,具體內(nèi)容如下
長(zhǎng)圖的滾動(dòng)會(huì)涉及定時(shí)器:
我們先來(lái)回顧下定時(shí)器:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>定時(shí)器回顧</title> </head> <body> <button id="start">開(kāi)啟</button> <button id="stop">關(guān)閉</button> <script type="text/javascript"> var start = document.getElementById("start"); var stop = document.getElementById("stop"); var num = 0,timer = null; start.onclick = function (){ // 使用定時(shí)器的時(shí)候 先清除原有定時(shí)器 再開(kāi)啟定時(shí)器 可以試著將下邊的clearInterval(timer);注釋掉然后多次點(diǎn)擊開(kāi)啟按鈕對(duì)比效果 clearInterval(timer); timer = setInterval(function (){ num++; console.log(num); },1000) } stop.onclick = function (){ clearInterval(timer); } </script> </body> </html>
溫習(xí)完定時(shí)器內(nèi)容后,來(lái)看長(zhǎng)圖滾動(dòng)的代碼:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>長(zhǎng)圖滾動(dòng)效果</title> <style> *{ padding: 0; margin: 0; } body{ background-color: #000; } #box{ width: 658px; height: 400px; border: 1px solid #ff6700; margin: 100px auto; overflow: hidden; position: relative; } #box img{ position: absolute; top: 0; left: 0; } #box span{ position: absolute; width: 100%; height: 50%; left: 0; cursor: pointer; } #box #top{ top: 0; } #box #bottom{ bottom: 0; } </style> </head> <body> <div id="box"> <img src="img/timer.jpeg" alt=""> <span id="top"></span> <span id="bottom"></span> </div> <script type="text/javascript"> // 1.獲取事件源 var box = document.getElementById('box'); var pic = document.getElementsByTagName('img')[0]; var divTop = document.getElementById('top'); var divBottom = document.getElementById('bottom'); // 2.添加事件 var num = 0,timer = null; divBottom.onmouseover = function () { // 清除之前的加速效果 clearInterval(timer); // 讓圖片向下滾動(dòng) timer = setInterval(function () { num -= 10; // 這個(gè)-3666是根據(jù)圖片自己調(diào)控的 if(num >= -3666){ pic.style.top = num + 'px'; }else{ clearInterval(timer); } },50); } divTop.onmouseover = function () { clearInterval(timer); // 讓圖片向上滾動(dòng) timer = setInterval(function () { num += 10; if(num <= 0){ pic.style.top = num + 'px'; }else{ clearInterval(timer); } },100); } // 鼠標(biāo)移開(kāi)則停止?jié)L動(dòng) box.onmouseout = function () { clearInterval(timer); } </script> </body> </html>
這里不放效果圖了,需要可以自己試試(記得找長(zhǎng)圖)
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- JS實(shí)現(xiàn)長(zhǎng)圖上下滾動(dòng)效果
- JS圖片無(wú)縫、平滑滾動(dòng)代碼
- js實(shí)現(xiàn)圖片無(wú)縫滾動(dòng)特效
- 用js實(shí)現(xiàn)的一個(gè)Flash滾動(dòng)輪換顯示圖片代碼生成器
- JS實(shí)現(xiàn)div內(nèi)部的文字或圖片自動(dòng)循環(huán)滾動(dòng)代碼
- div+css布局的圖片連續(xù)滾動(dòng)js實(shí)現(xiàn)代碼
- js jquery做的圖片連續(xù)滾動(dòng)代碼
- JavaScript代碼實(shí)現(xiàn)圖片循環(huán)滾動(dòng)效果
- JS實(shí)現(xiàn)圖片橫向滾動(dòng)效果示例代碼
- js實(shí)現(xiàn)圖片左右滾動(dòng)效果
相關(guān)文章
微信小程序中限制激勵(lì)式視頻廣告位顯示次數(shù)(實(shí)現(xiàn)思路)
本文給大家分享微信小程序中限制激勵(lì)式視頻廣告位顯示次數(shù),本文通過(guò)實(shí)例代碼來(lái)說(shuō)明,感興趣的朋友跟隨小編一起看看吧2019-12-12layui 實(shí)現(xiàn)加載動(dòng)畫(huà)以及非真實(shí)加載進(jìn)度的方法
今天小編就為大家分享一篇layui 實(shí)現(xiàn)加載動(dòng)畫(huà)以及非真實(shí)加載進(jìn)度的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09Javascript圖像處理—平滑處理實(shí)現(xiàn)原理
這里直接引用OpenCV 2.4+ C++ 平滑處理和OpenCV 2.4+ C++ 邊緣梯度計(jì)算的相關(guān)內(nèi)容平滑也稱(chēng)模糊, 是一項(xiàng)簡(jiǎn)單且使用頻率很高的圖像處理方法,需要了解的朋友可以參考下2012-12-12詳細(xì)聊聊TypeScript中unknown與any的區(qū)別
unknown類(lèi)型比較謙虛,就和他本身的意思一樣,他從不禍害到其他的變量,但是any類(lèi)型就是那種惡霸,屬于什么都不管,誰(shuí)也不敢管的類(lèi)型,這篇文章主要給大家介紹了關(guān)于TypeScript中unknown與any區(qū)別的相關(guān)資料,需要的朋友可以參考下2021-10-10js中symbol類(lèi)型以及symbol的三大應(yīng)用場(chǎng)景詳解
Symbol是ES6新推出的一種基本類(lèi)型,它表示獨(dú)一無(wú)二的值,它可以接受一個(gè)字符串作為參數(shù),帶有相同參數(shù)的兩個(gè)Symbol值不相等,這個(gè)參數(shù)只是表示Symbol值的描述而已,下面這篇文章主要給大家介紹了關(guān)于js中symbol類(lèi)型以及symbol的三大應(yīng)用場(chǎng)景,需要的朋友可以參考下2022-09-09微信小程序?qū)崿F(xiàn)聊天對(duì)話(huà)(文本、圖片)功能
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)聊天對(duì)話(huà)功能,可以發(fā)送文本、圖片,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-07-07bootstrap fileinput插件實(shí)現(xiàn)預(yù)覽上傳照片功能
這篇文章主要介紹了bootstrap fileinput插件實(shí)現(xiàn)預(yù)覽上傳照片功能,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2018-01-01js提交form表單,并傳遞參數(shù)的實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇js提交form表單,并傳遞參數(shù)的實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-05-05