JS實(shí)現(xiàn)仿蘋(píng)果底部任務(wù)欄菜單效果代碼
本文實(shí)例講述了JS實(shí)現(xiàn)仿蘋(píng)果底部任務(wù)欄菜單效果代碼。分享給大家供大家參考。具體如下:
這款仿蘋(píng)果電腦的底部任務(wù)欄菜單,是純JavaScript實(shí)現(xiàn)的菜單特效,鼠標(biāo)放上有響應(yīng)效果,菜單圖標(biāo)會(huì)變大,而且動(dòng)畫(huà)效果非常流暢,以前發(fā)過(guò)這種效果,但是是使用了jQuery實(shí)現(xiàn)的,今天這個(gè)沒(méi)有jQuery插件哦。
運(yùn)行效果截圖如下:
在線演示地址如下:
http://demo.jb51.net/js/2015/js-f-apple-buttom-nav-menu-style-codes/
具體代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>仿蘋(píng)果電腦任務(wù)欄菜單</title> <style type="text/css"> body{margin:0;padding:0} #menu{position:absolute;width:100%;bottom:0;text-align:center;} </style> <script type="text/javascript"> window.onload = function () { var oMenu = document.getElementById("menu"); var aImg = oMenu.getElementsByTagName("img"); var aWidth = []; var i = 0; //保存原寬度, 并設(shè)置當(dāng)前寬度 for (i = 0; i < aImg.length; i++) { aWidth.push(aImg[i].offsetWidth); aImg[i].width = parseInt(aImg[i].offsetWidth / 2); } //鼠標(biāo)移動(dòng)事件 document.onmousemove = function (event) { var event = event || window.event; for (i = 0; i < aImg.length; i++) { var a = event.clientX - aImg[i].offsetLeft - aImg[i].offsetWidth / 2; var b = event.clientY - aImg[i].offsetTop - oMenu.offsetTop - aImg[i].offsetHeight / 2; var iScale = 1 - Math.sqrt(a * a + b * b) / 300; if (iScale < 0.5) iScale = 0.5; aImg[i].width = aWidth[i] * iScale } }; }; </script> </head> <body> <div id="menu"> <img src="images/1.png" /> <img src="images/2.png" /> <img src="images/3.png" /> <img src="images/4.png" /> <img src="images/5.png" /> <img src="images/6.png" /> <img src="images/7.png" /> <img src="images/8.png" /> </div> </body> </html>
希望本文所述對(duì)大家的javascript程序設(shè)計(jì)有所幫助。
- js實(shí)現(xiàn)頂部可折疊的菜單工具欄效果實(shí)例
- Extjs學(xué)習(xí)筆記之四 工具欄和菜單
- JS實(shí)現(xiàn)自動(dòng)固定頂部的懸浮菜單欄效果
- 基于vue.js實(shí)現(xiàn)側(cè)邊菜單欄
- 使用ReactJS實(shí)現(xiàn)tab頁(yè)切換、菜單欄切換、手風(fēng)琴切換和進(jìn)度條效果
- 簡(jiǎn)單實(shí)現(xiàn)js菜單欄切換效果
- 原生JS仿蘋(píng)果任務(wù)欄菜單,放大效果的菜單
- JavaScript NodeTree導(dǎo)航欄(菜單項(xiàng)JSON類型/自制)
- 非常酷的js圖形漸隱導(dǎo)航菜單欄
- JS實(shí)現(xiàn)左側(cè)菜單工具欄
相關(guān)文章
ES6 javascript中Class類繼承用法實(shí)例詳解
這篇文章主要介紹了ES6 javascript中Class類繼承用法,結(jié)合實(shí)例形式較為詳細(xì)的分析了ES6繼承的基本用法、相關(guān)屬性、方法與使用技巧,需要的朋友可以參考下2017-10-10JavaScript實(shí)現(xiàn)點(diǎn)擊切換功能
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)點(diǎn)擊切換功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-01-01微信小程序?qū)崿F(xiàn)消息框彈出動(dòng)畫(huà)
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)消息框彈出動(dòng)畫(huà),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-06-06微信小程序使用map組件實(shí)現(xiàn)檢索(定位位置)周邊的POI功能示例
這篇文章主要介紹了微信小程序使用map組件實(shí)現(xiàn)檢索(定位位置)周邊的POI功能,涉及微信小程序基于map組件與高德地圖PAI接口的定位操作相關(guān)使用技巧,需要的朋友可以參考下2019-01-01Webpack4 使用Babel處理ES6語(yǔ)法的方法示例
這篇文章主要介紹了Webpack4 使用Babel處理ES6語(yǔ)法的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-03-03JS實(shí)現(xiàn)圓形進(jìn)度條拖拽滑動(dòng)
這篇文章主要為大家詳細(xì)介紹了JS實(shí)現(xiàn)圓形進(jìn)度條拖拽滑動(dòng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10