径向动画菜单效果的jQuery实现

径向动画菜单效果的jQuery实现
最终效果:
在制作径向菜单之前,你需要先了解几个知识点。

积极的math.sin形而上学的价值(x)x的返回值是1和1之间。

math.cos的余弦值(x)x数量的1至1返回。

这两个函数中的x表示的是弧度而不是角度。弧度的公式是2×π/ 360 *角,它是用JS表示的:数学。180度(1度=180。

例如,30度角的弧=2×π 360×30。

如何计算圆上任意一点的坐标(用于计算菜单相对圆的位置)
以母船左上角为圆点,建立坐标系。

代码如下:
径向菜单的制作
{ *
保证金:0;
填充:0;
}
{体
背景颜色:# 292a38;
字体微软雅黑;
}
{ H1
边距:20px;
文本对齐:中心;
颜色:# FFF;
}
{。navwrap
职位:相对;
宽度:200px;
身高:200px;
保证金:50px汽车;
边境:2px点缀# 4e5061;
边框半径:50%;
}
navwrap.main-nav {。
位置:绝对;
左:50%;
顶部:50%;
转换:翻译(- 50%,- 50%);分别离开移动元素对象50%,它居中。
宽度:40px;
身高:40px;
行高:40px;
字体大小:12px;
文本对齐:中心;
文字装饰:无;
颜色:# FFF;
边界半径:3px;
文字阴影:1px 1px 0px # 000;
背景:# 15a5f3;
光标:指针;
}
{ navwrap资产净值。
位置:绝对;
宽度:100%;
身高:100%;
转换:规模(0);
过渡:所有的0.5s自在;
不透明性:0;
}
{ navwrap.active资产净值。
转换:规模(1);
不透明性:1;
}
navwrap导航>一{。
位置:绝对;
宽度:30px;
身高:30px;
背景:# f44283;
文本对齐:中心;
行高:30px;
文字装饰:无;
颜色:# FFF;
边界半径:3px;
文字阴影:1px 1px 0px # 000;
转换:翻译(- 50%,- 50%);
}

径向动画菜单效果演示










$(文档)Ready(函数(){)
无功地= false; / /防止重复初始化子菜单位置
$(。navwrap ),(点击','。主导航功能(事件){)
Event.preventDefault();
var = $(this);
无功navwrap = me.closest('。navwrap);
VaR资产净值= navwrap.find('nav ');
如果(!NavWrap.hasClass(主动的)!位于){
/ / y = r +树脂θ
/ / x = R + rcosθ
VaR(R = navwrap.width) / 2;
无功startangle = 0 = 360,EndAngle; / /通过改变径向菜单的角度做出各种

/角子菜单
无功总= nav.length;
VaR的差距=(EndAngle - startangle)/总;

弧度角
var弧度=数学。pi 180;

*
*计算确定每个子菜单的最后位置
* /
每个(资产净值,功能(指数,EL){)
子菜单轴和正角度(角度、弧度)
var = myangle(startangle +间隙*指数)×弧度; / /θ
var x = R + r * Math.cos(myangle)和 / / myangle为弧度
Y = R + r * Math.sin(myangle);
设置当前子菜单位置(左,顶部)=(x,y)
美元(这个)。Css({
左:x + 'px,
上图:Y + 'px
});
});
位于=真;
}
NavWrap.toggleClass(主动的);
});
})

以上是本文的全部内容,希望大家能喜欢。

tag:菜单动画效果电脑软件jquery

相关内容