Maison > Article > interface Web > JS implémente l'imitation des compétences code_javascript du menu de la barre des tâches inférieure d'Apple
L'exemple de cet article décrit le code JS pour implémenter l'effet d'imitation du menu inférieur de la barre des tâches d'Apple. Partagez-le avec tout le monde pour votre référence. Les détails sont les suivants :
Cette imitation du menu inférieur de la barre des tâches d'un ordinateur Apple est un effet de menu implémenté en JavaScript pur. Lorsque la souris est placée, il y aura un effet de réponse, l'icône du menu deviendra plus grande et l'effet d'animation est très fluide. . Cet effet a déjà été publié, mais il est implémenté à l'aide de jQuery. Il n'existe pas de plug-in jQuery pour celui-ci aujourd'hui.
La capture d'écran de l'effet en cours d'exécution est la suivante :
L'adresse de la démo en ligne est la suivante :
http://demo.jb51.net/js/2015/js-f-apple-buttom-nav-menu-style-codes/
Le code spécifique est le suivant :
<!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>仿苹果电脑任务栏菜单</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; //保存原宽度, 并设置当前宽度 for (i = 0; i < aImg.length; i++) { aWidth.push(aImg[i].offsetWidth); aImg[i].width = parseInt(aImg[i].offsetWidth / 2); } //鼠标移动事件 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>
J'espère que cet article sera utile à la conception de la programmation JavaScript de chacun.