2011-11-30 127 views
1

我有一个问题给你。 我使用这个名为jScrollPane的插件。这很酷,我喜欢它。DIV在DIV中滚动时的位置

现在,当我在jscrollpaned DIV中向上/向下滚动时,我必须得到页面某处div的顶部位置。如果我使用$(window).scroll();它只是工作。但是这个功能并不是我所需要的。当我在那个DIV中滚动时,我需要一个函数。

因此$('.scroll-pane').scroll();不起作用(既不是它的任何容器)。

这是要理解的代码。这是工作:

 
$(window).scroll(function() { 
    var head_pos = $('.lister-head').offset(); 
});

我斯塔克。请有人帮助我吗?

+0

你有没有看过[jScrollPane API](http://jscrollpane.kelvinluck.com/api.html)?他们可能有些东西可以帮助你。 – peduarte

+0

当然,我做过,但没有一个适合我。 –

回答

0

没有一个明显的例子,努力帮助,但我想看看该库,所以我现在也许帮助:

peduarte是肯定正确的,你的答案是围绕API,更具体大约是event fired by that library,这很简单:

根据滚动的方式,您应该绑定事件进行滚动,然后您几乎可以在任何地方访问滚动窗格对象的上下文。

我扮演的jsfiddle了一下,看看:JSFiddle JsScrollPane sandbox;)

0

这里是解决办法,

<div style="position:fixed; margin-left:300px; font-size:24px; text-decoration:none; font-weight:bold; font-style:normal;"> 
<a href="#whatisit">What is it</a> 
<a href="#desc">Description</a> 
<a href="#faq">FAQ</a> 
</div> 

<div id="clockbox" style="height:4000px;"> 
<h1 id="whatisit" style="height:400px;">What is it</h1> 
<h1 id="desc" style="height:400px;">Description</h1> 
<h1 id="faq" style="height:400px;">FAQ</h1> 


</div> 

和脚本,

$(window).scroll(function() { 

if(parseInt($('#whatisit').offset().top) + $('#whatisit').height() >= ($(window).scrollTop())){ 
    $('a').css('color','blue'); 
    $('a[href="#whatisit"]').css('color','black'); 
} 
else if(parseInt($('#desc').offset().top) + $('#desc').height()>= ($(window).scrollTop())){ 
    $('a').css('color','blue'); 
    $('a[href="#desc"]').css('color','black'); 
} 
else if(parseInt($('#faq').offset().top) + $('#faq').height() >= ($(window).scrollTop())){ 
    $('a').css('color','blue'); 
    $('a[href="#faq"]').css('color','black'); 
} 

}); 

您可以使用%的高度也甚至不使用它。不管你会得到什么位置。为了更好地理解,我已经指定了高度。

我认为你会得到一个想法,弯曲你的方式。干杯:)。