2011-07-25 89 views
4

我只想在N个像素滚动后隐藏页面上的元素。当发生一定数量的滚动时隐藏元素

$(window).scroll(function(){ 
    if($(document).scrollTop() > 200){ 
    $('.fixedelement').css({'display': 'none'}); 
    } 
}); 

我认为这可能会起作用,并且在滚动200px后.fixedelement会消失。唉,它不起作用。有什么想法吗?

+0

那么你的HTML是什么样子? – Neal

+0

已测试过,它适用于我...代码似乎没有错。 –

回答

6

这似乎很好地工作在这里:http://jsfiddle.net/maniator/yDVXY/

$(window).scroll(function() { 
    if ($(this).scrollTop() > 200) { //use `this`, not `document` 
     $('.fixedelement').css({ 
      'display': 'none' 
     }); 
    } 
}); 
+0

$(document).scrollTop()也可以。 – ShankarSangoli

+0

@Shankar - 那是真的。我只是显示代码**确实**工作,OP在问题 – Neal

+0

是的,我认为对用户的acutal问题是200px。 200的scrolltop可能不等于200px。 – ShankarSangoli

2

试试这个。

$(window).scroll(function(){ 
    if($(document).scrollTop() > 200){//Here 200 may be not be exactly 200px 
    $('.fixedelement').hide(); 
    } 
}); 
+0

这没什么区别,'hide()== {display:'none'}' – Phil