百右侧导航滚动代码

百右侧导航滚动代码,第1张

function DirectoryNav($h,config){

thisopts = $extend(true,{

scrollThreshold:05,    //滚动检测阀值 05在浏览器窗口中间部位

scrollSpeed:700,        //滚动到指定位置的动画时间

scrollTopBorder:500,    //滚动条距离顶部多少的时候显示导航,如果为0,则一直显示

easing: 'swing',        //不解释

delayDetection:200,     //延时检测,避免滚动的时候检测过于频繁

scrollChange:function(){}

},config);

this$win = $(window);

this$h = $h;

this$pageNavList = "";

this$pageNavListLis ="";

this$curTag = "";

this$pageNavListLiH = "";

thisoffArr = [];

thiscurIndex = 0;

thisscrollIng = false;

thisinit();

}

DirectoryNavprototype = {

init:function(){

thismake();

thissetArr();

thisbindEvent();

},

make:function(){

//生成导航目录结构,这是根据需求自己生成的。如果你直接在页面中输出一个结构那也挺好不用 搞js

$("body")append('<div class="directory-nav" id="directoryNav"><ul></ul><span class="cur-tag"></span><span class="c-top"></span><span class="c-bottom"></span><span class="line"></span></div>>');

var $hs = this$h,

$directoryNav = $("#directoryNav"),

temp = [],

index1 = 0,

index2 = 0;

$hseach(function(index){

var $this = $(this),

text = $thistext();

if(thistagNametoLowerCase()=='h2'){

index1++;

if(index1%2==0) index2 = 0;

temppush('<li class="l1"><span class="c-dot"></span>'+index1+' <a class="l1-text">'+text+'</a></li>');

}else{

index2++;

temppush('<li class="l2">'+index1+''+index2+' <a class="l2-text">'+text+'</a></li>');

}

});

$directoryNavfind("ul")html(tempjoin(""));

//设置变量

this$pageNavList = $directoryNav;

this$pageNavListLis = this$pageNavListfind("li");

this$curTag = this$pageNavListfind("cur-tag");

this$pageNavListLiH = this$pageNavListLiseq(0)height();

if(!thisoptsscrollTopBorder){

this$pageNavListshow();

}

},

setArr:function(){

var This = this;

this$heach(function(){

var $this = $(this),

offT = Mathround($thisoffset()top);

ThisoffArrpush(offT);

});

},

posTag:function(top){

this$curTagcss({top:top+'px'});

},

ifPos:function(st){

var offArr = thisoffArr;

//consolelog(st);

var windowHeight = Mathround(this$winheight() thisoptsscrollThreshold);

for(var i=0;i<offArrlength;i++){

if((offArr[i] - windowHeight) < st) {

var $curLi = this$pageNavListLiseq(i),

tagTop = $curLiposition()top;

$curLiaddClass("cur")siblings("li")removeClass("cur");

thiscurIndex = i;

thisposTag(tagTop+this$pageNavListLiH05);

//thiscurIndex = this$pageNavListLisfilter("cur")index();

thisoptsscrollChangecall(this);

}

}

},

bindEvent:function(){

var This = this,

show = false,

timer = 0;

this$winon("scroll",function(){

var $this = $(this);

clearTimeout(timer);

timer = setTimeout(function(){

ThisscrollIng = true;

if($thisscrollTop()>ThisoptsscrollTopBorder){

if(!This$pageNavListLiH) This$pageNavListLiH = This$pageNavListLiseq(0)height();

if(!show){

This$pageNavListfadeIn();

show = true;

}

ThisifPos( $(this)scrollTop() );

}else{

if(show){

This$pageNavListfadeOut();

show = false;

}

}

},ThisoptsdelayDetection);

});

this$pageNavListon("click","li",function(){

var $this = $(this),

index = $thisindex();

ThisscrollTo(ThisoffArr[index]);

})

},

scrollTo: function(offset,callback) {

var This = this;

$('html,body')animate({

scrollTop: offset

}, thisoptsscrollSpeed, thisoptseasing, function(){

ThisscrollIng = false;

//修正弹两次回调 蛋疼

callback && thistagNametoLowerCase()=='body' && callback();

});

}

};

//实例化

var directoryNav = new DirectoryNav($("h2,h3"),{

scrollTopBorder:0   //滚动条距离顶部多少的时候显示导航,如果为0,则一直显示

});

欢迎分享,转载请注明来源:品搜搜测评网

原文地址:https://pinsoso.cn/meirong/3364874.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2024-02-20
下一篇2024-02-20

随机推荐

  • 十大抗衰老精华

    1、宝丽极光幻彩精华液这款产品是它抗衰老系列当中最高端的产品,里面蕴含的成分也是非常的珍贵的,集合了多种核心专利技术,可以从根源上柔弱肌肤。2、莱伯妮鱼子酱反重力精华这款产品主要利用了深海鱼籽精粹作为配方,再结合珍珠囊和五胜肽的复合物,能够

    2024-04-15
    35600
  • 后美白套盒淡斑效果怎么样,后雪美白适合什么皮肤用

    美白一直都是国内人的一个追求,皮肤白皙一点的话整个人的气质都能够得到提升,因此后美白套盒就成为了不少人的首选,那到底后美白套盒淡斑效果怎么样,后雪美白适合什么皮肤用一起来看看文章介绍吧。后美白套盒主要的作用就是美白,同时也具有一定的淡斑抗衰

    2024-04-15
    34200
  • 天气丹新版和旧版气味一样吗,天气丹新版和旧版有什么区别

    天气丹的水乳套盒一直是非常受欢迎的,随着人们皮肤特点的不断变化,天气丹的水乳套盒也在不断的改良升级,目的是让消费者花最少的钱享受到最优质的护肤产品,目前,市面上又出现了新版的天气丹套盒,那么天气丹新版和旧版气味一样吗?天气丹新版和旧版有什么

    2024-04-15
    32300
  • 保湿滋润的唇膏有哪些?口碑润唇膏推荐

    嘴唇干燥脱皮是很多人遇到过的问题,嘴巴脱皮影响唇部的美观,平时可以常备一支润唇膏,预防嘴唇干燥脱皮,有很多润唇膏比较滋润,用起来感受也比较好,好用的润唇膏有很多,那么保湿滋润的唇膏有哪些?口碑润唇膏推荐,一起来看看吧!1、好用润唇膏推荐1、

    2024-04-15
    27200
  • 后天气丹七件套翻译,天气丹7件套装对应中文

    相信大家对于后天气丹这款护肤品再熟悉不过了,它是韩国的一个有名护肤品牌,拥有大量的粉丝,市面上比较常见的就是套装,由于上边标注的是韩文,有些人不知道具体的意思,那么后天气丹七件套翻译是什么?天气丹7件套装对应中文是什么呢?后天气丹套装七件套

    2024-04-15
    27400
  • 乳液和精华液哪个明星

    十大明星同款护肤品排名1、海蓝之谜面霜,2、SK-Ⅱ嫩肤清莹露,3、兰蔻小黑瓶精华肌底液,4、迪奥的梦幻美肌修颜乳,5、资生堂盼丽风姿丰润护唇膏,6、娇兰御廷兰花乳液,7、LaPrairie莱珀妮焕颜新生乳霜,8、CPB沁肌紧肤蜜,9、PO

    2024-04-15
    28000
  • 妮维雅和欧莱雅哪个好?

    妮维雅和欧莱雅各有优势,具体比较如下:1 品牌与公司背景:欧莱雅集团是全球最大的美妆品行业领导者,旗下拥有多个国际知名品牌。而妮维雅公司是德国拜尔斯道夫公司所有的大型全球护肤品与身体护理品品牌。2 产品种类与功效:妮维雅只有基本的保湿功效,

    2024-04-15
    34700

发表评论

登录后才能评论
保存