內容在頁面中位置導航

html代碼:

 <body>
     <div id="j_subject">  
       <!-- 頭部/上一部分 -->
      <div class="nav">nav</div>
      <!-- 頭部/上一部分結束 -->

      <!-- 版塊 -->
       <div class="box1 cont-box">第一部分</div>
       <div class="box2 cont-box">第二部分</div>
       <div class="box3 cont-box">第三部分</div>
       <div class="box4 cont-box">第四部分</div>
       <div class="box5 cont-box">第五部分</div>
       <!-- 板塊結束 -->

       <!-- 結尾/下一部分 -->
        <div class="box6">結尾</div>
        <!-- 結尾結束/下一部分結束 -->

        <!-- 位置定位導航開始 -->
       <div class="j_nav" id="j_nav">
         <ul>
                <li class="nav-list"><p class="p1">第一部分按鈕</p></li>
                <li class="nav-list"><p class="p1">第二部分按鈕</p></li>
                <li class="nav-list"><p class="p1">第三部分按鈕</p></li>
                <li class="nav-list"><p class="p1">第四部分按鈕</p></li>
                <li class="nav-list"><p class="p1">第五部分按鈕</p></li>
                <li class="li-ju back clearfix">
                    <div class="arrow fl songti">
                        <em></em>
                        <i></i>
                    </div>
                    <p class="p1 fl">TOP</p>
                </li>
        </ul>
        </div>
        <!-- 位置定位導航結束 -->
        </div>
    </body>

其中項目css代碼(html中已經引入重置css文件):

.nav{background: blue;height: 500px;width: 100%;font-size: 24px;padding-left: 200px;}
.box1{height: 500px;padding-left: 200px;background: #fff;font-size: 24px;}
.box2{height: 500px;padding-left: 200px;background: pink;font-size: 24px;}
.box3{height: 500px;padding-left: 200px;background: red;font-size: 24px;}
.box4{height: 500px;padding-left: 200px;background: #fff;font-size: 24px;}
.box5{height: 500px;padding-left: 200px;background: green;font-size: 24px;}
.box6{height: 500px;padding-left: 200px;background: black;font-size: 24px;}
.j_nav{width: 130px;height: 245px;border-radius: 10px;border:1px solid #fff;background: #fff;position: absolute;right: 20px;top: 350px;box-shadow: 3px 2px 2px rgba(0,126,196,0.75);}
.j_nav li{height: 40px;line-height: 40px;text-align: center;cursor:pointer;}
.j_nav li .p1 {display: inline-block;width: 100%;color: #007ed4;font-size: 18px;}
.j_nav li .p1:hover{color: #ff1975;}
.j_nav .on .p1 {color: #ff1975;}
.j_nav .li-ju{background-image: none;}
.j_nav .li-ju:hover em{color:#ff1975;}
.j_nav .li-ju:hover i{color:#fff;}
.nav-on {position: fixed;right: 20px;top:11%;}
.j_nav .arrow {font-size: 16px;margin-left: 35px;width: 16px;margin-right: 5px;}
.j_nav .arrow em{color:#007ed4;}
.j_nav .arrow i{color:#fff;position: relative;top: -36px;}
.j_nav .back .p1 {width: 20px;}

js代碼:

$(function(){
    var subject =$('#j_subject');
    var navigation = $('#j_nav');           //導航
    var nav = subject.find('.nav-list');    //所有按鈕
    var conBox = subject.find('.cont-box');   //模塊
    var navTop = navigation.offset().top;  //導航相對於瀏覽器視口到高度
    var sw = screen.width;   // 顯示屏幕寬度
    nav.on('click',function(){
        var t = $(this);
        var ts = t.siblings('li');
        t.addClass('on');
        ts.removeClass('on');
        var tindex = t.index();
        var section = conBox.eq(tindex);
        var stop = section.offset().top;
        $('body,html').animate({scrollTop:stop},800);
    });
    $('.back').on('click',function(){
        $('body,html').animate({scrollTop:0},800);
    });
    $(window).scroll(function () {
        var w = $(window).scrollTop();   //滾動條的垂直偏移
        if (_util.check.isIE6) {
                return;
            };
            if (w >= 300) {
                    navigationion.addClass('nav-on');
                } else {
                    navigation.removeClass('nav-on');
                }
        $('.cont-box').each(function(a,b) {
            var ctop = $(this).offset().top;
            if (w>ctop-20) {
                navigation.find('li').removeClass('on');
                navigation.find('li').eq(a).addClass('on');
            }
        });
    }).trigger("scroll");
});
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章