jquery hc-mobile-nav实现自定义位置侧边菜单栏弹出效果代码

代码语言:html

所属分类:菜单导航

代码描述:jquery hc-mobile-nav插件实现自定义位置侧边菜单栏弹出效果代码,可实现弹出多级重叠菜单,可定义左边还是右边弹出。

代码标签: hc-mobile-nav 侧边 菜单 导航

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<style>
    html.hc-yscroll { overflow-y: scroll }
body.hc-nav-open { position: fixed; width: 100%; min-height: 100% }
.hc-mobile-nav { display: none; position: fixed; top: 0; height: 100%; z-index: 9999; overscroll-behavior: none }
.hc-mobile-nav.is-ios * { cursor: pointer !important }
.hc-mobile-nav .nav-container { position: fixed; z-index: 9998; top: 0; width: 240px; max-width: 100%; height: 100%; transition: transform .4s ease }
.hc-mobile-nav .nav-wrapper { width: 100% }
.hc-mobile-nav .nav-wrapper.nav-wrapper-1 { position: static; height: 100%; overflow: scroll; overflow-x: visible; overflow-y: auto }
.hc-mobile-nav ul { list-style: none; margin: 0; padding: 0 }
.hc-mobile-nav li { position: relative; display: block }
.hc-mobile-nav li.level-open>.nav-wrapper { visibility: visible }
.hc-mobile-nav input[type="checkbox"] { display: none }
.hc-mobile-nav label { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 10; cursor: pointer }
.hc-mobile-nav a { position: relative; display: block; box-sizing: border-box; cursor: pointer }
.hc-mobile-nav a,
.hc-mobile-nav a:hover { text-decoration: none }
.hc-mobile-nav.disable-body:not(.nav-open)::after { pointer-events: none }
.hc-mobile-nav.disable-body::after,
.hc-mobile-nav.disable-body .nav-wrapper::after { content: ''; position: fixed; z-index: 9990; top: 0; left: 0; right: 0; bottom: 0; width: 100%; height: 100%; overscroll-behavior: none; visibility: hidden; opacity: 0; transition: visibility 0s ease .4s, opacity .4s ease }
.hc-mobile-nav.disable-body.nav-open::after,
.hc-mobile-nav.disable-body .sub-level-open::after { visibility: visible; opacity: 1; transition-delay: .05s }
.hc-mobile-nav.nav-levels-expand .nav-wrapper::after { display: none }
.hc-mobile-nav.nav-levels-expand ul .nav-wrapper { min-width: 0; max-height: 0; overflow: hidden; transition: height 0s ease .4s }
.hc-mobile-nav.nav-levels-expand .level-open>.nav-wrapper { max-height: none }
.hc-mobile-nav.nav-levels-overlap ul .nav-wrapper { position: absolute; z-index: 9999; top: 0; height: 100%; visibility: hidden; transition: visibility 0s ease .4s, transform .4s ease }
.hc-mobile-nav.nav-levels-overlap ul ul { height: 100%; overflow: scroll; overflow-x: visible; overflow-y: auto }
.hc-mobile-nav.nav-levels-overlap ul li.nav-parent { position: static }
.hc-mobile-nav.nav-levels-overlap ul li.level-open>.nav-wrapper { visibility: visible; transition: transform .4s ease }
.hc-mobile-nav.side-left { left: 0 }
.hc-mobile-nav.side-left .nav-container { left: 0; transform: translate3d(-100%, 0, 0) }
.hc-mobile-nav.side-left.nav-levels-overlap li.level-open>.nav-wrapper { transform: translate3d(-40px, 0, 0) }
.hc-mobile-nav.side-left.nav-levels-overlap li .nav-wrapper { left: 0; transform: translate3d(-100%, 0, 0) }
.hc-mobile-nav.side-right { right: 0 }
.hc-mobile-nav.side-right .nav-container { right: 0; transform: translate3d(100%, 0, 0) }
.hc-mobile-nav.side-right.nav-levels-overlap li.level-open>.nav-wrapper { transform: translate3d(40px, 0, 0) }
.hc-mobile-nav.side-right.nav-levels-overlap li .nav-wrapper { right: 0; transform: translate3d(100%, 0, 0) }
.hc-mobile-nav.nav-open .nav-container { transform: translate3d(0, 0, 0) }
.hc-nav-trigger { position: absolute; cursor: pointer; display: none; top: 20px; z-index: 9980; min-height: 24px }
.hc-nav-trigger span { width: 30px; top: 50%; transform: translateY(-50%); transform-origin: 50% 50% }
.hc-nav-trigger span,
.hc-nav-trigger span::before,
.hc-nav-trigger span::after { position: absolute; left: 0; height: 4px; background: #34495E; transition: all .2s ease }
.hc-nav-trigger span::before,
.hc-nav-trigger span::after { content: ''; width: 100% }
.hc-nav-trigger span::before { top: -10px }
.hc-nav-trigger span::after { bottom: -10px }
.hc-nav-trigger.toggle-open span { background: rgba(0, 0, 0, 0); transform: rotate(45deg) }
.hc-nav-trigger.toggle-open span::before { transform: translate3d(0, 10px, 0) }
.hc-nav-trigger.........完整代码请登录后点击上方下载按钮下载查看

网友评论0