JavaScript側邊欄顯示和隱藏
在很多應用中,尤其是客服系統一般具有這樣的效果,那就是預設狀態下,會摺疊在網頁的一側,當滑鼠懸浮的時候會展開,下面就通過程式碼例項,介紹一下如何使用原生javascript實現此功能。
程式碼如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> #thediv{ width:150px; height:200px; background:#999999; position:absolute; left:-150px; } span{ width:20px; height:100px; line-height:23px; background:#09C; position:absolute; right:-20px; top:70px; } </style> <script> window.onload=function(){ var odiv=document.getElementById('thediv'); odiv.onmouseover=function (){startmove(0,10);} odiv.onmouseout=function (){startmove(-150,-10);} } var timer=null; function startmove(target,speed){ var odiv=document.getElementById('thediv'); clearInterval(timer); timer=setInterval(function (){ if(odiv.offsetLeft==target){ clearInterval(timer); } else{ odiv.style.left=odiv.offsetLeft+speed+'px'; } },30) } </script> </head> <body> <div id="thediv"> <span>螞蟻部落</span> </div> </body> </html>
滑鼠懸浮於側邊欄可以實現展開,離開實現收縮功能,下面介紹一下實現過程。
一.程式碼註釋:
(1).window.onload=function(){},文件結構內容完全載入完畢再去執行函式中的程式碼。
(2).var odiv=document.getElementById('thediv'),獲取指定元素物件。
(3).odiv.onmouseover=function (){startmove(0,10);},為odiv物件註冊onmouseover事件處理函式。
(4).odiv.onmouseout=function (){startmove(-150,-10);},為odiv物件註冊onmouseout事件處理函式。
(5).var timer=null,宣告一個timer作為定時器函式的標識。
(6).function startmove(target,speed){}此函式是展開和摺疊的核心函式,第一個引數是left的目標值,speed是速度。
(7). var odiv=document.getElementById('thediv'),獲取元素物件。
(8).clearInterval(timer),停止前一個定時器函式的執行,可以防止多個定時器函式同時執行造成干擾。
(9).timer=setInterval(function (){},30),每隔30毫秒執行一次函式。
(10).if(odiv.offsetLeft==target){clearInterval(timer);},如果div元素距離body左邊緣等於規定的尺寸,就停止定時器函式。
(11).else{odiv.style.left=odiv.offsetLeft+speed+'px';},否則繼續設定left屬性值。
二.相關閱讀:
(1).onmouseover事件參閱JavaScript mouseover事件一章節。
(2).onmouseout事件參閱JavaScript mouseout事件一章節。
(3).clearInterval()函式參閱clearInterval()一章節。
(4).setInterval()函式參閱setInterval()一章節。
(5).offsetLeft屬性參閱JavaScript offsetLeft一章節。
相關文章
- jQuery側邊欄隱藏和顯示導航jQuery
- ElementUI側邊欄導航選單隱藏顯示問題UI
- Qt介面設計--側邊欄隱藏和滑出QT
- Typora 隱藏側邊欄圖片資料夾
- javascript隱藏和顯示div的方法JavaScript
- javaScript顯示和隱藏(display屬性)JavaScript
- CSS3實現側邊欄快速定位的隱藏和消失CSSS3
- MacOS X隱藏和顯示隱藏檔案Mac
- Mac顯示和隱藏“隱藏檔案”命令Mac
- Android 顯示、隱藏狀態列和導航欄Android
- 滾動cell 顯示隱藏導航欄
- jQuery 效果 – 隱藏和顯示jQuery
- view的隱藏和顯示View
- JavaScript動畫方式控制div元素的隱藏和顯示JavaScript動畫
- javascript動態設定div的顯示和隱藏JavaScript
- JavaScript點選切換div的顯示和隱藏JavaScript
- JavaScript 設定div顯示與隱藏JavaScript
- Win10 隱藏左側邊側欄(導航視窗)中的資料夾Win10
- mac顯示隱藏檔案,取消顯示隱藏檔案Mac
- Mac下顯示和隱藏隱藏檔案的命令Mac
- 區塊的顯示和隱藏
- JavaScript點選一個按鈕隱藏和顯示divJavaScript
- MAC如何顯示隱藏檔案和隱藏隱藏檔案的命令Mac
- javascript動態隱藏顯示技術(轉)JavaScript
- javascript實現動態側邊欄JavaScript
- OSX中隱藏和顯示[隱藏檔案]的命令列命令列
- 在 Laravel 中動態 隱藏 / 顯示 API 欄位LaravelAPI
- JavaScript 點選一個按鈕 div的隱藏和顯示JavaScript
- iOS 隱藏&顯示tabBariOStabBar
- fltk-rs 隱藏標題欄但顯示工作列圖示
- CSS點選隱藏和顯示div效果CSS
- Mac OS X 顯示和隱藏檔案Mac
- EditText設定密碼隱藏和顯示密碼
- mac隱藏檔案顯示Mac
- Mac 顯示隱藏檔案Mac
- Mac顯示/不顯示隱藏檔案教程!Mac
- Ubuntu 20.04 自動隱藏左側導航欄Ubuntu
- jquery點選按鈕顯示和隱藏DIvjQuery