亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

jQuery實現(xiàn)徑向動畫菜單效果

 更新時間:2015年07月17日 10:27:45   投稿:hebedich  
這篇文章主要介紹了jQuery實現(xiàn)徑向動畫菜單效果的相關(guān)資料,需要的朋友可以參考下

最終效果:

在徑向菜單的制作前,首先需要知道幾點知識點:

Math.sin(x)      x 的正玄值。返回值在 -1.0 到 1.0 之間;

Math.cos(x)    x 的余弦值。返回的是 -1.0 到 1.0 之間的數(shù);

這兩個函數(shù)中的X 都是指的“弧度”而非“角度”,弧度的計算公式為: 2*PI/360*角度,使用js表示是這樣的:Math.PI/180*度數(shù)(1度=180/Math.PI)

如:30° 角度 的弧度 = 2*PI/360*30

如何計算圓上任何點坐標(用于計算出子菜單相對于圓的位置)

以父容器左上角為圓點,建立坐標系

代碼如下:

<!DOCTYPE html>
<html lang="zh-cn">
<head>
<title>徑向菜單的制作</title>
<meta charset="utf-8"/>
<meta name="keywords" content="" />
<meta name="description" content="" />
<script type="text/javascript" src="jquery.js"></script> <!--此處需引入jquery文件-->
<style type="text/css">
* {
margin: 0;
padding: 0;
}
body {
background-color: #292a38;
font-family: "Microsoft Yahei";
}
h1 {
margin-top: 20px;
text-align: center;
color: #fff;
} 
.navWrap {
position: relative;
width: 200px;
height: 200px;
margin: 50px auto;
border: 2px dotted #4e5061;
border-radius: 50%;
}
.navWrap .main-nav {
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%,-50%);/*分別向左上移動元素對象的50%,保證居中*/
width: 40px;
height: 40px;
line-height: 40px;
font-size: 12px;
text-align: center;
text-decoration: none;
color: #fff;
border-radius: 3px;
text-shadow: 1px 1px 0px #000;
background: #15a5f3;
cursor: pointer;
} 
.navWrap nav {
position: absolute;
width: 100%;
height: 100%;
transform: scale(0);
transition: all 0.5s ease-out;
opacity: 0;
} 
.navWrap.active nav {
transform: scale(1);
opacity: 1;
}
.navWrap nav > a{
position: absolute;
width: 30px;
height: 30px;
background: #f44283;
text-align: center;
line-height: 30px;
text-decoration: none;
color: #fff;
border-radius: 3px;
text-shadow: 1px 1px 0px #000;
transform: translate(-50%,-50%);
} 
</style>
</head> 
<body>

<h1>徑向動畫菜單效果演示</h1>

<div class="navWrap">
<nav>
<a>1</a>
<a>2</a>
<a>3</a>
<a>4</a>
<a>5</a>
<a>6</a>
<a>7</a>
<a>8</a>
</nav>
<a class="main-nav">點我</a>
</div>

<script type="text/javascript">
$(document).ready(function() {
var isLocated = false; //防止重復初始化子菜單位置
$(".navWrap").on('click', '.main-nav', function(event) {
event.preventDefault();
var me = $(this);
var navWrap = me.closest('.navWrap');
var nav = navWrap.find('nav a');
if(!navWrap.hasClass('active')&&!isLocated){ 
//Y=R+Rsinθ
//X=R+Rcosθ
var r = navWrap.width()/2;
var startAngle =0, endAngle=360; //可以通過改變角度,做出各種各樣的徑向菜單

//子菜單的夾角
var total = nav.length;
var gap = (endAngle - startAngle)/total;

//角度->弧度
var radian = Math.PI/180;

/*
* 計算并確定各個子菜單的最終位置
*/
$.each(nav,function(index, el) {
// 當前子菜單與x軸正向的夾角 θ (角度->弧度)
var myAngle = (startAngle + gap*index) * radian; // θ
var x = r+r*Math.cos(myAngle),//myAngle為弧度
y = r+r*Math.sin(myAngle);
// 設(shè)置當前子菜單的位置 (left,top) = (x,y)
$(this).css({
left: x + 'px',
top: y + 'px'
});
});
isLocated = true;
}
navWrap.toggleClass('active');
});
})
</script>
</body>
</html>

以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。

相關(guān)文章

  • jquery操作select option 的代碼小結(jié)

    jquery操作select option 的代碼小結(jié)

    jquery操作select option 的代碼小結(jié),需要的朋友可以參考下。
    2011-06-06
  • Jquery實現(xiàn)自定義窗口隨意的拖拽

    Jquery實現(xiàn)自定義窗口隨意的拖拽

    點擊一個按鈕時,彈出一個自定義窗口,并且可以隨意的拖拽,jquery也可以實現(xiàn)這樣的功能,下面有個不錯的示例,大家可以感受下
    2014-03-03
  • jquery果凍抖動效果實現(xiàn)方法

    jquery果凍抖動效果實現(xiàn)方法

    這篇文章主要介紹了jquery果凍抖動效果實現(xiàn)方法,涉及animate方法的使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-01-01
  • jquery 動態(tài)合并單元格的實現(xiàn)方法

    jquery 動態(tài)合并單元格的實現(xiàn)方法

    下面小編就為大家?guī)硪黄猨query 動態(tài)合并單元格的實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-08-08
  • jquery檢測input checked 控件是否被選中的方法

    jquery檢測input checked 控件是否被選中的方法

    這篇文章主要介紹了jquery檢測input checked 控件是否被選中的方法,需要的朋友可以參考下
    2014-03-03
  • 使用jquery庫實現(xiàn)電梯導航效果

    使用jquery庫實現(xiàn)電梯導航效果

    這篇文章主要為大家詳細介紹了使用jquery庫實現(xiàn)電梯導航效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • jQuery實現(xiàn)動態(tài)操作table行

    jQuery實現(xiàn)動態(tài)操作table行

    這篇文章主要為大家詳細介紹了jQuery實現(xiàn)動態(tài)操作table行,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • jQuery中contents()方法用法實例

    jQuery中contents()方法用法實例

    這篇文章主要介紹了jQuery中contents()方法用法,實例分析了contents()方法的功能、定義及查找匹配元素內(nèi)部所有的一級子節(jié)點的使用技巧,需要的朋友可以參考下
    2015-01-01
  • JQuery 學習筆記 選擇器之五

    JQuery 學習筆記 選擇器之五

    測試代碼如下,本例子中設(shè)置的著色比較多,哈,都是隨便輸些數(shù)字進去的,感覺這樣更容易讓大家看到效果,呵,如果我的講的有哪不好麻煩大家多留言教導下^^
    2009-07-07
  • jquery帶下拉菜單和焦點圖代碼分享

    jquery帶下拉菜單和焦點圖代碼分享

    這篇文章主要介紹了jquery帶下拉菜單和焦點圖代碼,推薦給大家,有需要的小伙伴可以參考下。
    2015-08-08

最新評論