亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

javascript實現頁面滾屏效果

2019-11-19 17:54:01
字體:
來源:轉載
供稿:網友

當我們瀏覽網頁的時候,時常會碰到可以滾動屏幕的炫酷網頁,今天筆者對這一技術進行簡單實現,效果不及讀者理想中那般炫酷,主要針對滾屏的技術原理和思想進行分享和分析。本示例在頁面右側有五個數字標簽,代表五個頁面,點擊數字可以切換到對應的頁面,滾動鼠標滑輪可以實現數字標簽的切換,頁面的切換。筆者未對頁面的平穩滾動進行實現,讀者可自行試驗研究。

這是html代碼:

<!doctype html><html> <head> <meta charset="UTF-8"> <title>Document</title> <link rel="stylesheet" type="text/css" href="style.css" /> </head> <body> <div class="big-box" id="bigBox">  <div class="item item1"><h1>屏幕1</h1></div>  <div class="item item2"><h1>屏幕2</h1></div>  <div class="item item3"><h1>屏幕3</h1></div>  <div class="item item4"><h1>屏幕4</h1></div>  <div class="item item5"><h1>屏幕5</h1></div> </div> <ul class="controls">  <li class="active">1</li>  <li>2</li>  <li>3</li>  <li>4</li>  <li>5</li> </ul> <script src="behavior.js"></script> </body></html>

這里是css結構代碼:

*{margin:0; padding:0;}html,body{ width:100%; height:100%; overflow:hidden;}.big-box { width:100%; height:500%; text-align:center; position:absolute;}.big-box .item{ height:20%;}.big-box .item1 { background-color:red;}.big-box .item2 { background-color:blue;}.big-box .item3 { background-color:purple;}.big-box .item4 { background-color:gold;}.big-box .item5 { background-color:pink;}.controls { list-style:none; position:absolute; top:20%; right:20px;}.controls li { width:50px; height:50px; font:bold 22px/50px "宋體"; text-align:center; background-color:#000; color:#fff; cursor:pointer;}.controls li+li { margin-top:5px;}.controls li.active { background-color:#fff; color:red;}

這里是JavaScript代碼:

/* 思路: 第一步:當頁面加載完后,獲取所要操作的節對象 第二步:為document添加一個滾輪滾動事件 第三步:滾輪滾動切換  獲取當前瀏覽器可視區域的高度  var viewHeight = document.body.clientHeight  滾輪切換的目的:就是更改bigBox的top值  top:最大0  top:最小 viewHeight*-4  從上到下或從下到上:最多走4次(5個頁面) 每一次走viewHeight  控制的關鍵點:索引 定一個索引 2  滾輪↓  索引+1  滾輪↑  索引-1  bigBox.style.top = -索引*viewHeihgt */var bigBox = document.getElementById("bigBox");//獲取bigBox節點對象var lis = document.querySelectorAll(".controls li");//獲取所有的li節點對象var viewHeight = document.body.clientHeight;//獲取當前頁面高度var flag = true;//設置開關var index = 0;//設置索引//封裝事件,兼容瀏覽器function on(obj,eventType,fn){ if(obj.addEventListener){ obj.addEventListener(eventType, fn); }else{ obj.attachEvent("on" + eventType, fn); }}//鼠標滾動事件處理函數function handler(e){ var _e = window.event || e; if(flag){ flag = false; if(_e.wheelDelta==120 || _e.detail==-3){//如果鼠標滾輪向上滾動,detail為火狐判斷條件  index--;  if(index<0){  index = 0;  } }else{//向下滾動  index++;  if(index>lis.length-1){//如果索引大于頁面數,就是滾到最后一張頁面時,再滾動鼠標頁面不再滾動  index = lis.length-1;  } } bigBox.style.top = -index*viewHeight + "px";//bigBox整體上移index個頁面 for(var i=0; i<lis.length; i++){  lis[i].className = "";//重置全部li的類 } lis[index].className = "active";//設置當前li的類名 setTimeout(function(){//頁面滾動間隔一秒,防止滾動太快  flag = true;//重新開啟開關 },1000); }}on(document,"mousewheel",handler);//滾輪滾動事件on(document,"DOMMouseScroll",handler);//滾輪滾動事件,適配火狐瀏覽器//數字標簽點擊處理for(var i=0; i<lis.length; i++){ lis[i].tag = i; lis[i].onclick = function(){ for(var j=0; j<lis.length; j++){  lis[j].className = ""; } lis[this.tag].className = "active"; bigBox.style.top = -this.tag*viewHeight + "px"; }}

筆者在這里進行了html,css和javascript的分離,讀者可自行整合。代碼編寫的邏輯思路也在代碼中進行了簡單說明,方便讀者閱讀和理解。筆者在這里只是對滾屏技術進行簡單的實現,純javascript技術,效果稍欠人意,讀者可自行學習,對這一技術進行完美實現。

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持武林網!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久99热精品这里久久精品| 欧美精品少妇videofree| 91精品国产乱码久久久久久久久| 狠狠色噜噜狠狠狠狠97| 久久精品视频在线| 国产精品免费小视频| 成人亚洲激情网| 久久精视频免费在线久久完整在线看| 久久久免费在线观看| 欧美国产日韩中文字幕在线| 欧美性色视频在线| 国产va免费精品高清在线| 欧美一区二区三区精品电影| 色综久久综合桃花网| 欧美精品18videosex性欧美| 正在播放欧美视频| 亚洲精品中文字幕av| 国产日韩欧美中文在线播放| 欧美与黑人午夜性猛交久久久| 欧美激情一二区| 色综合久综合久久综合久鬼88| 国产精品一区二区电影| 久久久久免费视频| 日韩有码在线播放| 欧美日韩免费在线| 91av免费观看91av精品在线| 国产精品一区二区三区免费视频| 91沈先生在线观看| 欧美裸体xxxx| 国产亚洲激情视频在线| 精品久久在线播放| 激情久久av一区av二区av三区| 久久免费视频观看| 久久精彩免费视频| 97国产精品视频人人做人人爱| 亚洲性av在线| 亚洲精选一区二区| 国产精品啪视频| 亚洲精品一区二三区不卡| 欧美亚洲国产视频| 欧美孕妇毛茸茸xxxx| 精品视频偷偷看在线观看| 亚洲国产成人精品电影| 国产成人一区二区三区电影| 亚洲综合中文字幕68页| www.久久草.com| 国产精品一区二区久久久| 日韩电影免费观看在线观看| 亚洲国产日韩欧美在线99| 亚洲片av在线| 日韩精品欧美国产精品忘忧草| 亚洲女同精品视频| 久久福利视频导航| 欧洲精品在线视频| 色婷婷综合成人av| 亚洲日本成人女熟在线观看| 欧美一级大胆视频| 狠狠久久亚洲欧美专区| 中文字幕日韩欧美在线视频| 第一福利永久视频精品| 91精品视频一区| 成人激情电影一区二区| 日韩精品中文字| 成人免费福利视频| 欧美成人免费一级人片100| 欧美乱大交xxxxx另类电影| 国产精品99导航| 午夜精品久久17c| 久久伊人91精品综合网站| 国产精品影片在线观看| 国产精品一区二区3区| 欧美日韩在线一区| 午夜精品一区二区三区在线播放| 日韩a**站在线观看| 亚洲最大成人网色| 日韩av电影在线网| 欧美综合国产精品久久丁香| 国产精品免费久久久久影院| 国产精品丝袜久久久久久不卡| 亚洲无av在线中文字幕| 这里只有精品视频在线| 欧美主播福利视频| 国产成人精品午夜| 欧美激情第三页| 国产精品九九九| 国自在线精品视频| 欧美xxxx做受欧美| 国产精品精品视频一区二区三区| 亚洲综合精品一区二区| 清纯唯美日韩制服另类| 66m—66摸成人免费视频| 国产日韩欧美日韩| 高清日韩电视剧大全免费播放在线观看| 欧美性一区二区三区| 欧美亚洲国产成人精品| 国产精品久久国产精品99gif| 国产精品扒开腿爽爽爽视频| 亚洲国产精久久久久久| 亚洲欧美日韩精品久久| 国产成人精品在线观看| 欧美性猛交xxxx免费看| 久久久97精品| 国内精品久久久久久久久| 日韩电影免费在线观看| 欧美成人在线免费视频| 大胆欧美人体视频| 欧美日韩国产色| 国产91色在线免费| 亚洲人成电影网站色| 国产ts一区二区| 国产精品扒开腿做爽爽爽的视频| 91在线视频精品| 国产精品主播视频| 69久久夜色精品国产69| 久久精品视频中文字幕| 欧美激情伊人电影| 国产精品私拍pans大尺度在线| 亚洲天天在线日亚洲洲精| 国产成人精品优优av| 国产91色在线播放| 精品日本美女福利在线观看| 欧美日韩国产成人高清视频| 久久久久久久久久久人体| 亚洲aⅴ日韩av电影在线观看| 国产精品观看在线亚洲人成网| 欧美综合在线第二页| 亚洲精品一区二区久| 亚洲天堂av在线免费| 一二美女精品欧洲| 蜜臀久久99精品久久久久久宅男| 一本一本久久a久久精品牛牛影视| 亚洲国产小视频在线观看| 亚洲综合中文字幕在线观看| 国产福利视频一区| 中国china体内裑精亚洲片| 97久久精品在线| 91精品啪在线观看麻豆免费| 日本精品va在线观看| 亚洲欧美激情四射在线日| 国产成人中文字幕| 国产日韩专区在线| 欧美日韩精品在线播放| 日韩欧美aⅴ综合网站发布| 欧美日韩精品在线视频| 欧美性猛交xxxx免费看久久久| 欧美性猛交xxxx| 在线免费观看羞羞视频一区二区| 日韩国产在线播放| 国产精品h在线观看| 一个人看的www久久| 日韩在线视频中文字幕| 在线观看欧美www| 欧美日韩裸体免费视频| 国产日本欧美视频| 亚洲大胆人体视频| 欧美理论片在线观看| 欧美大片免费观看| 国产又爽又黄的激情精品视频| 韩日欧美一区二区| 一区二区三区无码高清视频| 欧美日韩一区二区精品| 欧美福利视频在线| 国产成人精品亚洲精品| 欧美成人免费大片|