前言:
此刻兄弟们对“jquery锚点”都比较注意,朋友们都想要学习一些“jquery锚点”的相关文章。那么小编在网络上网罗了一些有关“jquery锚点””的相关知识,希望大家能喜欢,同学们一起来了解一下吧!默认效果:
展开效果:
废话不多说,直接上代码:
Html Code:<div class=" header" id="eventDetailNavMain"><a href="javascript:void(0)" class="fl h-logo" title="logo">LOGO</a><!-- 按钮 --><a href="javascript:;" class="fr h-nu-btn" id="hNuBtn"> <span class="h-nu-default-icon"> </span> //-->h-nu-default-icon 放默认图标 //-->h-nu-close-icon 放关闭X 图标 <i class="common-icon h-nu-close-icon"></i></a> <div class="h-nu-box"> //这里还可以放登陆-退出等div的box,布局要做好扩展 <div class="h-nav-box">//h-nav-box 这个是导航box <ul class="nav nav-tabs clearfix "> <li class="item itemli"> <a href="/" class="anchoritem">首页</a></li><li class="item itemli active"> <a href="#dsinfo" class="anchoritem">大赛简介</a></li><li class="item itemli"> <a href="#zzjg" class="anchoritem">组织机构</a></li><li class="item itemli"> <a href="#scplan" class="anchoritem">赛程安排</a></li><li class="item itemli"> <a href="#jxset" class="anchoritem">奖项设置</a></li><li class="item itemli"> <a href="#works" class="anchoritem">参赛作品要求</a></li><li class="item itemli"> <a href="#dspw" class="anchoritem">评审委员会</a></li><li class="item itemli"> <a href="javascript:;" class="anchoritem applicjob">实习招聘</a></li></ul>//这里可以是 其他box,这里放的是一个a标签<a href="/" class="apply-link" target="_blank"> 报名入口</a></div></div></div>//hNuMask 是背景遮罩曾,可以全局的 <a href="javascript:;" class="c-mask" id="cMask"></a>注意:⚠️锚点定位栏目结构:-->赛程安排 id="scplan"<div class="resume-contitle"> <div class="title-mod" id="scplan"></div> <h2 class="title-text">赛程安排</h2></div><style>//锚点准确跳转的关键样式 .title-mod { position: absolute; left: 0; top: -60px; width: 100%; height: 60px; z-index: -1; }</style>
Css Code//-->遮罩的样式.cMask { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,.8); z-index: 15; display: none; }.cMask.show { display: block;}.header { background: #060634; display: none; border: 1px solid #352CC5; box-shadow: 0 6px 10px 0 rgba(0,0,0,0.10); height: 46px; line-height: 46px; font-size: 12px; color: #FFFFFF; position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 20;}//按钮.h-nu-btn { width: 46px; height: 46px; position: relative; //如果logo文字太长,把图标挤下来了,可以考虑fixed top: 0; right: 0;}.header .h-nu-default-icon { width: 46px; height: 46px; display: block; background: #352CC5 url(../img/default_icon.png) center; background-repeat: no-repeat;}.header .h-nu-close-icon { width: 46px; height: 46px; display: none; //默认是隐藏的 background: #352CC5 url(../img/close.png) center no-repeat; top: 0px; position: absolute;}//header 点击的时候,新增active的时候,关闭图标显示。.header.active .h-nu-close-icon { display: block;}//header 点击的时候,新增active的时候,ul所在box显示。.header.active .h-nu-box { display: block;}-->ul.nav样式 太普遍了,就...省略了..ofh { overflow: hidden;}
Js Codefunction activeSideBarFixed() { //滚动吸顶 var $activeSideBar = $('.nav-resumewrap');//要吸顶的ul var navTop = 0; if ($activeSideBar[0]) { navTop = $activeSideBar.offset().top; } $(window).scroll(function() { var scrolltop = document.documentElement.scrollTop || document.body.scrollTop; if (scrolltop > navTop) { sideTop = scrolltop - navTop; $activeSideBar.addClass('fixed'); //添加fixed样式即:.nav-resumewrap.fixed{...} } else { $activeSideBar.removeClass('fixed'); } });};//toast 方法function ajax_handle_message(msg){//操作信息提示方法 var $handleMessagePop = $('#handleMessagePop'); $handleMessagePop.text(msg).addClass('show'); setTimeout(function(){ $handleMessagePop.removeClass('show').empty(); },1000);};function hNuToggle() { var $hNuBtn = $('#hNuBtn'), $hNuMask = $('#cMask'),//全局遮罩元素 $html = $('html'), winHeight = $(window).height() + 'px', isOfh = false; //-->图标点击执行事件 $hNuBtn.off('click').on('click', function() { var $t = $(this); $t.parent().toggleClass('active'); $hNuMask.toggleClass('show'); $html.toggleClass('ofh'); isOfh = $html.hasClass('ofh'); if (isOfh) { $html.css('height', winHeight); } }); //-->遮罩点击执行事件 $hNuMask.off('click').on('click', function() { var $t = $(this); $t.removeClass('show'); $hNuBtn.parent().removeClass('active'); }); //点击子元素,关闭header的选中active效果 $('.h-nu-box .itemli').off('click').on('click', function() { $hNuBtn.parent().removeClass('active'); }); $('.applicjob').off('click').on('click', function() { ajax_handle_message('敬请期待'); });};$(function() { activeSideBarFixed(); hNuToggle(); //锚点定位栏目,用的是bootstrapjs的功能,target对应ul的包围box即可 $('body').scrollspy({ target: '#eventDetailNavMain' });})
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。
标签: #jquery锚点 #jquery元素遮罩层 #jquery禁止a链接跳转 #css里面header #jquery锚点定位