JS实现仿苹果底部任务栏菜单效果代码


Posted in Javascript onAugust 28, 2015

本文实例讲述了JS实现仿苹果底部任务栏菜单效果代码。分享给大家供大家参考。具体如下:

这款仿苹果电脑的底部任务栏菜单,是纯JavaScript实现的菜单特效,鼠标放上有响应效果,菜单图标会变大,而且动画效果非常流畅,以前发过这种效果,但是是使用了jQuery实现的,今天这个没有jQuery插件哦。

运行效果截图如下:

JS实现仿苹果底部任务栏菜单效果代码

在线演示地址如下:

具体代码如下:

<!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>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
JavaScript改变HTML元素的样式改变CSS及元素属性
Nov 12 Javascript
ListBox实现上移,下移,左移,右移的简单实例
Feb 13 Javascript
一个通过script自定义属性传递配置参数的方法
Sep 15 Javascript
Angularjs中如何使用filterFilter函数过滤
Feb 06 Javascript
深入理解JavaScript中的浮点数
May 18 Javascript
全面解析bootstrap格子布局
May 22 Javascript
jQuery实现弹出带遮罩层的居中浮动窗口效果
Sep 12 Javascript
AngularJS实现表格的增删改查(仅限前端)
Jul 04 Javascript
vuex 的简单使用
Mar 22 Javascript
angular2实现统一的http请求头方法
Aug 13 Javascript
多页vue应用的单页面打包方法(内含打包模式的应用)
Jun 11 Javascript
Chrome插件开发系列一:弹窗终结者开发实战
Oct 02 Javascript
jquery实现弹出层登录和全屏层注册特效
Aug 28 #Javascript
jquery实现多条件筛选特效代码分享
Aug 28 #Javascript
jquery实现的用户注册表单提示操作效果代码分享
Aug 28 #Javascript
js实现横向伸展开的二级导航菜单代码
Aug 28 #Javascript
谈谈JavaScript中function多重理解
Aug 28 #Javascript
jquery衣服颜色选取插件效果代码分享
Aug 28 #Javascript
jQuery表单验证功能实例
Aug 28 #Javascript
You might like
国外比较好的几个的Php开源建站平台小结
2010/04/22 PHP
php数组函数序列之array_sum() - 计算数组元素值之和
2011/10/29 PHP
php实现网站顶踩功能的完整前端代码
2015/07/19 PHP
ThinkPHP实现生成和校验验证码功能
2017/04/28 PHP
PHP批量删除jQuery操作
2017/07/23 PHP
javascript真的不难-回顾一下基础知识
2013/01/15 Javascript
jQuery ajax serialize() 方法使用示例
2014/11/02 Javascript
node.js中RPC(远程过程调用)的实现原理介绍
2014/12/05 Javascript
jQuery删除一个元素后淡出效果展示删除过程的方法
2015/03/18 Javascript
jQuery中cookie插件用法实例分析
2015/12/04 Javascript
详解js的事件处理函数和动态创建html标记方法
2016/12/16 Javascript
用jQuery旋转插件jqueryrotate制作转盘抽奖
2017/02/10 Javascript
Vue.js 2.0学习教程之从基础到组件详解
2017/04/24 Javascript
4个顶级JavaScript高级文本编辑器
2018/10/10 Javascript
vue keep-alive列表页缓存 详情页返回上一页不刷新,定位到之前位置
2019/11/26 Javascript
Preload基础使用方法详解
2020/02/03 Javascript
javascript前端和后台进行数据交互方法示例
2020/08/07 Javascript
让python的Cookie.py模块支持冒号做key的方法
2010/12/28 Python
python设置随机种子实例讲解
2019/09/12 Python
Python for循环及基础用法详解
2019/11/08 Python
利用python在excel中画图的实现方法
2020/03/17 Python
Keras之fit_generator与train_on_batch用法
2020/06/17 Python
Django实现随机图形验证码的示例
2020/10/15 Python
Django url 路由匹配过程详解
2021/01/22 Python
selenium3.0+python之环境搭建的方法步骤
2021/02/01 Python
超酷炫 CSS3垂直手风琴菜单
2016/06/28 HTML / CSS
浅析HTML5中header标签的用法
2016/06/24 HTML / CSS
Exception类的常用方法
2012/06/16 面试题
汽车技术服务与营销专业在籍生自荐信
2013/09/28 职场文书
公司清洁工岗位职责
2013/12/14 职场文书
幸福家庭标语
2014/06/27 职场文书
2016优秀班主任个人先进事迹材料
2016/02/26 职场文书
Python编写nmap扫描工具
2021/07/21 Python
SQL实现LeetCode(180.连续的数字)
2021/08/04 MySQL
Python 数据可视化之Bokeh详解
2021/11/02 Python
Redis之RedisTemplate配置方式(序列和反序列化)
2022/03/13 Redis