导航菜单

CSS3创意圆形菜单布局设计

阿里云


这是一款非常有创意的 jQuery 和 CSS3 圆形菜单界面布局设计。这个界面布局中,通过点击主菜单按钮可以在它的四周出现主菜单按钮。点击每一个主菜单按钮都会以动画的方式切换到相应的界面,效果非常的炫酷。

HTML 结构

菜单的 HTML 结构使用一个<main>元素来作为包裹元素。汉堡包图标使用 div.burger_menu 来制作。子菜单按钮分别是在<div>元素中嵌入一个 font-aawesome 图标来实现。

也想出现在这里?联系我们
创客主机
  1. <main class="main_menu">
  2.   <div class="burger_menu">
  3.     <div class="top_line"></div>
  4.     <div class="middle_line"></div>
  5.     <div class="bottom_line"></div>
  6.   </div>
  7.   <div class="image">
  8.     <i class="fa fa-image image-ico"></i>
  9.   </div>
  10.   <div class="location">
  11.     <i class="fa fa-map-marker map-marker-ico"></i>
  12.   </div>
  13.   <div class="mail">
  14.     <i class="fa fa-envelope envelope-ico"></i>
  15.   </div>
  16.   <div class="home">
  17.     <i class="fa fa-home home-ico"></i>
  18.   </div>
  19. </main>

每个主菜单调整到的界面对应 HTML 代码中的一个

JAVASCRIPT

该特效中使用 jQuery 代码来在圆形按钮和关闭按钮在点击时为相应的元素切换 class。

  1. var $multiple_menus = '.home, .location, .image, .mail';
  2. var $all_menus = '.burger_menu, .home, .location, .mail, .image';
  3. $('.burger_menu').click(function () {
  4.     $(this).toggleClass('toggle_burger');
  5.     setTimeout(function () {
  6.         $('.home').toggleClass('toggle_home');
  7.     }, 100);
  8.     setTimeout(function () {
  9.         $('.location').toggleClass('toggle_location');
  10.     }, 200);
  11.     setTimeout(function () {
  12.         $('.image').toggleClass('toggle_image');
  13.     }, 300);
  14.     setTimeout(function () {
  15.         $('.mail').toggleClass('toggle_mail');
  16.     }, 400);
  17. });
  18. $($all_menus).click(function () {
  19.     $(this).siblings().css({ 'z-index': '5' });
  20.     $(this).css({ 'z-index': '10' });
  21. });
  22. $('main i.fa').click(function () {
  23.     $(this).parent().toggleClass('freeze');
  24.     setTimeout(function () {
  25.         $('.circle_background').addClass('scale');
  26.     }, 500);
  27.     if ($(this).parent().hasClass('freeze')) {
  28.         $($multiple_menus).addClass('hide');
  29.     }
  30. });
  31. $('i.icon_close').click(function () {
  32.     $('.burger_menu').addClass('toggle_burger');
  33.     $(this).parent().fadeOut('slow');
  34.     setTimeout(function () {
  35.         $('.circle_background').removeClass('scale');
  36.         $('i.home-ico, i.map-marker-ico, i.image-ico, i.envelope-ico').fadeIn('slow');
  37.     }, 400);
  38.     setTimeout(function () {
  39.         $($multiple_menus).css({ 'z-index': '4' }).removeClass('hide freeze');
  40.     }, 700);
  41.     $('.circle_background').css({ 'z-index': '2' });
  42. });
  43. $('i.home-ico').click(function () {
  44.     setTimeout(function () {
  45.         $('i.home-ico').fadeOut('fast');
  46.     }, 500);
  47.     setTimeout(function () {
  48.         $('.home_content').fadeIn('slow');
  49.     }, 1000);
  50. });
  51. $('i.map-marker-ico').click(function () {
  52.     setTimeout(function () {
  53.         $('i.map-marker-ico').fadeOut('fast');
  54.     }, 500);
  55.     setTimeout(function () {
  56.         $('.location_content').fadeIn('slow');
  57.     }, 1000);
  58. });
  59. $('i.image-ico').click(function () {
  60.     setTimeout(function () {
  61.         $('i.image-ico').fadeOut('fast');
  62.     }, 500);
  63.     setTimeout(function () {
  64.         $('.image_content').fadeIn('slow');
  65.     }, 1000);
  66. });
  67. $('i.envelope-ico').click(function () {
  68.     setTimeout(function () {
  69.         $('i.envelope-ico').fadeOut('fast');
  70.     }, 500);
  71.     setTimeout(function () {
  72.         $('.mail_content').fadeIn('slow');
  73.     }, 1000);
  74. });

具体的 CSS 实现代码请参考下载文件。

CSS3 创意圆形菜单布局设计

已有 597 人购买
查看演示升级 VIP立刻购买

演示地址 下载地址
收藏
(0)

发表回复

热销模板

Ashade - 作品展示摄影相册WordPress汉化主题
LensNews

本站承接 WordPress / PbootCMS / DedeCMS 等
系统建站、仿站、开发、定制等业务!