需要帮助让FadeTo方法使用窗口滚动事件
问题描述:
我想让我的一个页面网站的每个'部分'根据滚动位置淡入和淡出。我希望该部分保持为display:block,因此我使用的是FadeTo/FadeOut而不是FadeIn/FadeOut方法。需要帮助让FadeTo方法使用窗口滚动事件
想法是当每个部分在距离顶部到达一定距离时淡入淡出,当它不符合某些要求时淡入淡出。我当前的标记尝试如下,但挣扎在搞清楚我作出了错误
功能:
function scrollFadeDiv(element, navheight) {
var offset = element.offset();
var offsetTop = offset.top;
var totalScroll = offsetTop - navheight;
if (totalScroll > 0){
$(element).fadeTo('slow', 0.0);
} else {
$(element).fadeTo('slow', 1.0);
}
}
和我的窗口滚动事件:
$(window).on('scroll', function(){
var elWrapped = $('section');
scrollFadeDiv(elWrapped, 75);
});
我的关注是因为住()已被弃用和委托()对滚动事件不起作用,totalScroll变量不会在加载DOM后不断更新/重新计算。
在此先感谢!
感谢Lucuma,该解决方案的工作就好了。为了更好地理解和改进我的工艺,我仍然在寻找我出错的地方。再次感谢您的建议! – user1512126 2012-07-12 13:43:32
构建一个jsfiddle来演示特定的问题并将其发布到您的问题。我不确定这个问题与新的jquery版本中的类似事件的实况和委托有什么关系。 – lucuma 2012-07-12 15:55:50