2015-07-19 60 views
1

我正在处理我的页面的一些内容,我想知道如何能够在下一段的标题停留在底部,而我正在阅读第一个页面,但是当我通过时通过页面滚动它?如何在页面底部留下标题,然后在通过时滚动?

我试着去查找它,但是我甚至没有找到可以帮助的东西。我只是不确定我想要做什么效果。

在此先感谢!

+2

使用偏移,scrollTop的属性,这就是你的线索 – vinayakj

回答

1

我不完全确定我的理解,你会想要类似THIS

var title = []; 
 

 
$('.title').each(function() { 
 
    title.push($(this)); 
 
}); 
 

 
$(window).scroll(function() { 
 
    var bottom = $(window).scrollTop() + $(window).height(); 
 
    for (var i = 0; i < title.length; i++) { 
 
     if (bottom > title[i].offset().top) { 
 
      $('.currentTitle').text(title[i + 1].text()); 
 
     } 
 
    } 
 
    console.log(bottom); 
 
});
.content > h1 { 
 
    margin-top: 300px; 
 
} 
 

 
.currentTitle { 
 
    position: fixed; 
 
    bottom: 0; 
 
    width: 100%; 
 
    text-align: center; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="content"> 
 
    <h1 class="title"> title 1 </h1> 
 
    <p> text 1 </p> 
 
    <h1 class="title"> title 2 </h1> 
 
    <p> text 2 </p> 
 
    <h1 class="title"> title 3 </h1> 
 
    <p> text 3 </p> 
 
    <p class="currentTitle"> title 1</p> 
 
</div>

+0

对不起,我没有说清楚,但你点上!这正是我要找的。谢谢! – Rixy

+0

我做了这个代码'快',你可能需要抛光它一点,即这将永远不会回到标题1!并将继续显示最后的标题,即使你已经通过它! :) –

+0

会做!至少我有一个工作的基础,绰绰有余!再次感谢。 – Rixy

相关问题