2013-04-29 31 views
0

我有一个带有固定标题和菜单的页面网站。现在我想从家中(开始的地方)更改菜单进行联系,当它到达网站的联系人部分时。无论如何要做到这一点?当达到div时获得活动菜单

如果有人能在正确的方向指向我,

亲切的问候

回答

1

“......点我在正确的方向”

DIRECTION DEMO

$(窗口).scroll()函数 - 使用scrollTop()让你的窗口滚动位置并存储到var。 比检查您元素的.offset().top;比赛是var值+ PX的一些额外的量(我用“100”) - ,抓住元素data-title

HTML:

<div id="header"> 
    <h1></h1> 
</div> 

    <div class="page" data-title="Home"> home page</div> 
    <div class="page" data-title="About"> bout page</div> 
    <div class="page" data-title="Info"> info page</div> 
    <div class="page" data-title="Contact"> contact page</div> 

CSS:

#header{  
    position:fixed; 
    width:100%; 
    background:#0ff; 
    padding:15px;  
} 
.page{  
    padding:20px; 
    padding-top: 140px; 
    background:#eee; 
    margin-bottom:10px; 
    min-height:800px;  
} 

的jQuery:

$(function(){ // DOM ready shorthand 

    var $page = $('.page'); 

    function getTitle(){ 
     var winScrollTop = $(window).scrollTop();  
     $page.each(function(){ 
      var pageOffs = $(this).offset().top, 
       title = $(this).data('title'); 
      if(winScrollTop > pageOffs-100){    
        $('h1').text(title); 
      } 
     }); 
    } 
    getTitle(); 

    $(window).scroll(getTitle); 

}); 
0

你可以尝试这样的事情:

$(window).scroll(function() { 
    var scrollTop = $(window).scrollTop(), 
    divOffset = $('#contact').offset().top, 
    dist = (divOffset - scrollTop); 
    if (dist == 0) { 
     $('.menuItem').text('contact'); 
    } 
});