基於jQuery滑鼠點擊水波動畫垂直導航程式碼。這是一款基於jQuery+CSS3實現的帶有動畫效果的垂直導航列特效。效果圖如下:
html代碼:
<div class="nav"> <ul> <li><a>网站首页</a></li> <li><a>关于我们</a></li> <li><a>产品中心</a></li> <li><a>成功案例</a></li> <li><a>联系我们</a></li> <li><a>在线留言</a></li> </ul> </div> <script type="text/javascript" src="js/jquery.min.js"></script> <script type="text/javascript"> //jQuery time var parent, ink, d, x, y; $(".nav ul li a").click(function (e) { parent = $(this).parent(); //create .ink element if it doesn't exist if (parent.find(".ink").length == 0) parent.prepend("<span class='ink'></span>"); ink = parent.find(".ink"); //incase of quick double clicks stop the previous animation ink.removeClass("animate"); //set size of .ink if (!ink.height() && !ink.width()) { //use parent's width or height whichever is larger for the diameter to make a circle which can cover the entire element. d = Math.max(parent.outerWidth(), parent.outerHeight()); ink.css({ height: d, width: d }); } //get click coordinates //logic = click coordinates relative to page - parent's position relative to page - half of self height/width to make it controllable from the center; x = e.pageX - parent.offset().left - ink.width() / 2; y = e.pageY - parent.offset().top - ink.height() / 2; //set the position and add class .animate ink.css({ top: y + 'px', left: x + 'px' }).addClass("animate"); }) </script>
以上程式碼是本文的核心程式碼,比較簡單,大家可以依照需求,適當的添加刪除程式碼。