模拟苹果菜单的js代码是从网上看到的,用来做导航菜单还是蛮好看的。这里借鉴一下。

效果描述:当鼠标移动离哪个图片最近的时候,这个图片最大,鼠标离的图片越远,则图片越小;

原理:主要用到了三角形的勾股定理,可以根据两点的坐标,求到两点的距离,突然发现数学知识和js效果息息相关啊!

步骤:

1.插入大的图片,防止图片放大后失真,图片初始值为它的一半。

2.获取每个图片的中心点;

3.获取鼠标的位置;

4.使用勾股定理求出鼠标离图片中心的的距离;

代码入下:

document.mousemove=function(e){
var e=window.event||e;
for (var i = 0; i < oImg.length; i++) {
var x = oImg[i].offsetLeft + oImg[0].offsetWidth/2 ;//我这里每个图片都一样宽;
var y = oImg[i].offsetTop + oImg[0].offsetHeight/2 + box.offsetTop; //box是包含图片外面的div,用来定位的;
var a=e.clientX - x;
var b=e.clientY - y;
var c=Math.sqrt(Math.pow(a,2)+Math.pow(b,2)); //数学公式
var d=1-c/300; //c除以300是用来降低基数的,因为c越大,代表鼠标离图片越远,则图片越小,所以用1-则得到相对应的基数;
if(d<0.5){
d=0.5 //图片本身不能小于它的一半
}
oImg[i].style.width=d*128 + 'px';
oImg[i].style.height=d*128 + 'px';
}; }

看着很难的一个效果,用初中学的知识就解决了,真的很意想不到。

最新文章

  1. 获取设备的mac地址可靠的方法
  2. 在VS中MFC、ATL与WIN32有什么联系或区别?
  3. ACM: HDU 2563 统计问题-DFS+打表
  4. 对于限制UITextView输入的字符数
  5. xcode6 framework missing submodule xxx 警告
  6. Google账户无法登陆-Solved
  7. As.net WebAPI CORS, 开启跨源访问,解决错误No &#39;Access-Control-Allow-Origin&#39; header is present on the requested resource
  8. 19、android面试题整理(自己给自己充充电吧)
  9. PHP中文汉字验证码
  10. Hadoop 2.7 伪分布式环境搭建
  11. Django学习日记07_Admin
  12. 判断一个字符串是不是一个合法的IP地址
  13. Executor框架(一)
  14. netstat 问题处理
  15. 关于select联动的两种做法
  16. hdu3625-Rooms
  17. 请求时控制器的返回结果view()怎么会默认调到某个页面的?
  18. Reversion windows 2008 R2 STD to Datacenter
  19. POJ1942
  20. leetcode650 2 Keys Keyboard

热门文章

  1. Windows Phone开发工具初体验【转载】
  2. &quot;无法启动程序,因为计算机中丢失*.dll” 运行exe错误解决方法
  3. 【ALearning】第三章 Android基本常见控件
  4. 初探 MySQL 的 Binlog
  5. jQuery 学习笔记(未完待续)
  6. 未打开Ad Hoc Distributed Queries
  7. 萌货猫头鹰登录界面动画iOS实现分析
  8. TableView不显示没内容的Cell怎么办?
  9. Linux系统故障处理案例(一)
  10. Centos 6.4 python 2.6 升级到 3.5.2