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

首頁 > 網站 > CMS建站 > 正文

WordPress導航菜單的滾動和淡入淡出效果的實現要點

2020-03-22 16:47:33
字體:
來源:轉載
供稿:網友
滾動導航菜單
滾動菜單, 顧名思義是以滾動的方式顯示和隱藏菜單的. 其實跟淡入淡出菜單和滾動菜單的原理是一樣的, 前者是在觸發事件的時候改變菜單的透明度, 而后者則是改變菜單的高度. 那為什么后者的處理難度會比前者高呢 這正因為菜單高度的處理比透明度有更高的技巧要求. 下面我們就討論一下該如何處理, 并難在什么地方.初期化處理
為了處理更加靈活, 我們需要為它定義一個作為參數的滑動速度, 也就是每一個單位時間間隔, 菜單高度的改變幅度. 另外, 我們需要將菜單的初始高度定為 0.// 速度來自參數, 默認沒個時間單位移動 10pxthis.speed = speed || 10;// 設定初始化高度this.util.setStyle(this.body, 'height', '0');展開和折疊
展開和折疊的方法對應淡入淡出菜單的加強和減小不透明度, 只是處理對象不一樣, 原理是一樣的. 要注意將獲取的高度轉為整型再進行計算.expand: function() { // 獲取當前高度, 并整型化 var height = parseInt(this.util.getStyle(this.body, 'height')); // 在時間單位內加上速度, 直到高度等于或超過最大高度 height += this.speed; if(height = this.height) { height = this.height; // 取消循環調用 clearTimeout(this.tid); // 重新設定菜單高度 this.util.setStyle(this.body, 'height', height + 'px'); * 折疊菜單, 直到高度為 1 時隱藏菜單collapse:function() { // 獲取當前高度, 并整型化 var height = parseInt(this.util.getStyle(this.body, 'height')); // 在時間單位內減去速度, 直到高度等于或小于 1 height -= this.speed; if(height = 1) { height = 1; // 隱藏菜單 this.util.setStyle(this.body, 'visibility', 'hidden'); // 取消循環調用 clearTimeout(this.tid); // 重新設定菜單高度 this.util.setStyle(this.body, 'height', height + 'px');激活菜單的瞬間
十分十分十分重要, 滾動菜單中最具技巧, 也最有意思的一部分.
本程序中, 我對獲取高度的方法進行了封裝, 獲取高度其實是返回元素的 offsetHeight. 按我的理解 (不知道是否正確), offsetHeight 會優先去獲取 CSS 樣式中的高度并返回, 當樣式為空時才會去獲取元素的實際高度. 所以有以下代碼:// 獲得初始高度, 當鼠標在菜單標題上時獲得展開時的初始高度, 當鼠標在菜單體上時取得菜單的實際高度var initHeight = this.util.getStyle(this.body, 'height');// 獲得實際高度, 必須先清空樣式的高度, 否則只會得到樣式中的高度this.util.setStyle(this.body, 'height', '');this.height = this.util.getHeight(this.body);// 重新設定初始高度this.util.setStyle(this.body, 'height', initHeight);淡出淡入導航菜單
實施操作前面的分析說得有點啰嗦了, 還是看看代碼吧. :) 為了突出改動的部分, 我在代碼中加入了一些 Log.初始化
初始不透明度為 0, 而最大不透明度為被設定值或者 1.// 定義透明度, 默認透明this.opacity = 0;this.maxopacity = opacity || 1;激活
先進行前期處理, 再對菜單的透明度進行處理. * 激活方法 * 當鼠標移動到菜單標題是激活activate: function() { // 獲取當前菜單體的位置 var pos = this.util.cumulativeOffset(this.title); var left = pos[0]; var top = pos[1] + this.util.getHeight(this.title); // 定義激活時樣式 this.util.setStyle(this.body, 'left', left + 'px'); this.util.setStyle(this.body, 'top', top + 'px'); this.util.setStyle(this.body, 'visibility', 'visible'); this.util.setStyle(this.body, 'opacity', this.opacity); this.util.setStyle(this.body, 'filter', 'alpha(opacity=' + this.opacity * 100 + ')'); if(this.tid) { clearTimeout(this.tid); // 不斷加強菜單的不透明度 this.tid = setInterval(this.util.bind(this, this.appear), 30);加強菜單的不透明度, 直到透明度到達最大不透明度. * 加強不透明度, 直到最大不透明度appear: function() { this.opacity += 0.1; if(this.opacity = this.maxopacity) { this.opacity = this.maxopacity; // 取消循環調用 clearTimeout(this.tid); // 重新設定透明度 this.util.setStyle(this.body, 'opacity', this.opacity); this.util.setStyle(this.body, 'filter', 'alpha(opacity=' + this.opacity * 100 + ')');解除
對菜單的透明度進行處理. * 解除方法 * 當鼠標移動出菜單標題是激活deactivate: function(){ if(this.tid) { clearTimeout(this.tid); // 不斷減弱菜單的不透明度 this.tid = setInterval(this.util.bind(this, this.fade), 30);減弱菜單的不透明度, 直到透明度為 0 并隱藏菜單. * 減小不透明度, 直到完全透明隱藏菜單fade:function() { this.opacity -= 0.1; if(this.opacity = 0) { this.opacity = 0; // 隱藏菜單 this.util.setStyle(this.body, 'visibility', 'hidden'); // 取消循環調用 clearTimeout(this.tid); // 重新設定透明度 this.util.setStyle(this.body, 'opacity', this.opacity); this.util.setStyle(this.body, 'filter', 'alpha(opacity=' + this.opacity * 100 + ')');PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
最近2019中文免费高清视频观看www99| 日韩在线观看免费高清| 欧美日韩一区二区免费在线观看| 亚洲欧洲高清在线| 亚洲精品电影网| 欧美刺激性大交免费视频| 超在线视频97| 亚洲精品乱码久久久久久金桔影视| 97色在线视频| 日韩中文字幕视频在线| 国产精品久久久久久久久久免费| 国产精品96久久久久久又黄又硬| 亚洲免费电影在线观看| 成人欧美一区二区三区黑人| 日韩在线不卡视频| 日韩精品免费综合视频在线播放| 国产精品亚洲综合天堂夜夜| 中文字幕欧美日韩在线| 国产欧美欧洲在线观看| 欧美性开放视频| 欧美高清视频在线| 精品亚洲一区二区三区| 成人a在线观看| 日韩av在线影院| 中文字幕自拍vr一区二区三区| 一区二区三区国产在线观看| 亚洲精品之草原avav久久| 精品久久在线播放| 欧美日韩999| 91麻豆国产语对白在线观看| 日韩av在线高清| 18性欧美xxxⅹ性满足| 日韩免费在线免费观看| 国产精品嫩草视频| 亚洲成人a**站| 91网站在线免费观看| 国产精品美女免费看| 国产精品美女主播在线观看纯欲| 色综合亚洲精品激情狠狠| 国产精品久久久久久av下载红粉| 国产成人精品优优av| 国产ts一区二区| 国产精品视频网址| 中文字幕精品在线视频| 国产亚洲福利一区| 亚洲人成亚洲人成在线观看| 成人福利网站在线观看11| 久久91超碰青草是什么| 久久久av电影| 久久亚洲精品一区| 亚洲视频在线免费看| 大量国产精品视频| 91成品人片a无限观看| 欧美日韩综合视频| 亚洲精品一区二区网址| 欧美电影在线观看网站| 九九九久久国产免费| 欧美激情视频一区二区三区不卡| 欧美一区第一页| 亚洲bt天天射| 在线播放精品一区二区三区| 91av中文字幕| 91久久综合亚洲鲁鲁五月天| 欧美激情精品久久久久久黑人| 国产在线高清精品| 98精品国产高清在线xxxx天堂| 日韩亚洲欧美中文高清在线| 久久韩剧网电视剧| 久久久久久久久综合| 久久久免费高清电视剧观看| 亚洲欧美在线播放| 国产精品永久免费视频| 在线播放日韩av| 亚洲日本欧美中文幕| 国产亚洲欧美日韩精品| 久久av红桃一区二区小说| 97精品久久久中文字幕免费| 91在线播放国产| 国产欧美精品va在线观看| 国产精品视频一区国模私拍| 777午夜精品福利在线观看| 国产亚洲欧美另类中文| 亚洲综合中文字幕在线观看| 欧美成人合集magnet| 国产精品欧美日韩一区二区| 国产精品一区二区三区在线播放| 91在线视频九色| 97久久超碰福利国产精品…| 久久99精品国产99久久6尤物| 久久精品视频网站| 国产美女扒开尿口久久久| 国产一区二区三区在线| 亚洲国产精品久久久久秋霞蜜臀| 91免费欧美精品| 久久色精品视频| 亚洲国产一区二区三区在线观看| 色av中文字幕一区| 国产精品美女久久久久久免费| 日本aⅴ大伊香蕉精品视频| 美女少妇精品视频| 久久成人国产精品| 欧美性开放视频| 久久精品国产亚洲一区二区| 欧美综合在线观看| 欧美激情欧美狂野欧美精品| 色婷婷亚洲mv天堂mv在影片| 日韩在线视频中文字幕| 日韩欧美精品网站| 欧美日韩人人澡狠狠躁视频| 日韩欧美在线观看| 亚洲a成v人在线观看| 91久久久久久久久久| 久久深夜福利免费观看| 国产主播在线一区| 欧美激情在线观看视频| 久久在线视频在线| 色狠狠久久aa北条麻妃| 久久精品99久久香蕉国产色戒| 97福利一区二区| 亚洲乱码一区av黑人高潮| 精品亚洲一区二区三区在线观看| 欧美日韩国产成人在线观看| 国产精品一区专区欧美日韩| 一本色道久久88精品综合| 亚洲色图15p| 亚洲综合中文字幕在线| 粉嫩老牛aⅴ一区二区三区| 亚洲a在线观看| 欧美疯狂做受xxxx高潮| 成人免费在线网址| 欧美成人国产va精品日本一级| 日韩av大片在线| 国产99久久精品一区二区永久免费| 欧美激情一级精品国产| 日韩欧美在线免费观看| 国产精品狼人色视频一区| 欧美成人高清视频| 国产欧美日韩精品专区| 国产精品久久久久久av下载红粉| 国产精品视频区1| 久久久久日韩精品久久久男男| 亚洲国产成人爱av在线播放| 成人免费视频xnxx.com| 亚洲成人激情在线观看| 亚洲欧美一区二区三区情侣bbw| 亚洲精品第一国产综合精品| 国产区精品在线观看| 欧美肥婆姓交大片| 精品久久久久久久中文字幕| 92版电视剧仙鹤神针在线观看| 97国产在线视频| 亚洲欧美日韩国产中文专区| 精品视频在线播放色网色视频| 亚洲成av人影院在线观看| 97超视频免费观看| 国产精品v日韩精品| 日韩高清有码在线| 欧美成aaa人片在线观看蜜臀| 欧美人交a欧美精品| 午夜精品久久久久久久久久久久| 在线观看91久久久久久| 亚洲第一国产精品| 国产精品丝袜白浆摸在线| 欧美裸体男粗大视频在线观看|