2012-11-06 235 views
4

我有一个div,它位于幻灯片的底部,当用户滚动或使用向下箭头时我想消失,然后在滚动到顶部时再次出现。我猜这是合并jquery滚动功能?在滚动上显示/隐藏Div

+4

请发表您的代码 –

回答

41
<div> 
    <div class="a"> 
     A 
    </div> 

</div>​ 


$(window).scroll(function() { 

    if ($(this).scrollTop()>0) 
    { 
     $('.a').fadeOut(); 
    } 
    else 
    { 
     $('.a').fadeIn(); 
    } 
}); 

Sample

+0

谢谢,这个人工作过一个款待 – Dan

+0

@丹不客气.HTH – freebird

+0

@freebird哇。这很简单,就像一个魅力!谢谢! –

2
$(window).scroll(function() { 
    var Bottom = $(window).height() + $(window).scrollTop() >= $(document).height(); 
if(Bottom) 
{ 
$('#div').hide(); 
} 
}); 
0

试试这个代码

$('window').scrollDown(function(){$(#div).hide()}); 

$('window').scrollUp(function(){ $(#div).show() }); 
0

我有一个漂亮的答案试试这个代码;)

<div id="DivID"> 
</div> 

$("#DivID").scrollview({ direction: 'y' }); 
$("#DivID > .ui-scrollbar").addClass("ui-scrollbar-visible"); 
1

这里是我的答案,当你想要动画并在几秒钟后开始淡出。我使用了不透明度,因为首先我不想完全淡出它,其次,它不会在多次滚动后返回并强制执行。

$(window).scroll(function() { 
    var elem = $('div'); 
    setTimeout(function() { 
     elem.css({"opacity":"0.2","transition":"2s"}); 
    },4000);    
    elem.css({"opacity":"1","transition":"1s"});  
}); 
+0

我用它在4秒后隐藏按钮,并在用户再次滚动时显示回来 – DragonKnight

0
$.fn.scrollEnd = function(callback, timeout) {   
    $(this).scroll(function(){ 
    var $this = $(this); 
    if ($this.data('scrollTimeout')) { 
     clearTimeout($this.data('scrollTimeout')); 
    } 
    $this.data('scrollTimeout', setTimeout(callback,timeout)); 
    }); 
}; 

$(window).scroll(function(){ 
    $('.main').fadeOut(); 
}); 

$(window).scrollEnd(function(){ 
    $('.main').fadeIn(); 
}, 700); 

这应该做的伎俩!