三角函数是上学时为了应付考试,不得不学的一些知识,当时并无感受有什么用处,如今回头再看,尤为是和JavaScript结合,能作出不少神奇的效果,这一系列文章主要讲讲三角函数的基础,并根据基础知识分析一下效果的原理,再经过Javascript来实现,咱们如今开始!javascript
咱们先来看下直角三角形html
勾股定理的定义:在直角三角形中,两直角边的平方和等于斜边的平方。用公式表示:$$a^2 + b^2 = c^2$$java
勾股定理的主要做用就是求两间的距离,咱们常常有这样的需求,浏览器窗口有两个dom元素,咱们须要知道这两个dom的距离git
咱们把三角形画出来:github
由图中咱们能够求出:docker
a = d2.pageX - d1.pageX b = d2.pageY - d1.pageY
根据上面的勾股定理,咱们就能够求出c边的长度。浏览器
$$a^2 + b^2 = c^2$$
那么
$$c = \sqrt{a^2 + b^2}$$dom
用javascript表示为:函数
var c = Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2))
运行效果图spa
特色
图标的大小与鼠标的距离成反比,距离越远,图标越小,距离越近,图标越大。那么如今的核心的问题就成了,怎么知道鼠标与图标的距离了
原理图
思路
要查看最终效果以及具体实现,请用力点我