2010-09-03 46 views
0

CSSJquery .scroll display:none;不工作

#acc-close-all, #to-top { 
    position: relative; 
    left: 951px; 
    width: 29px; 
    height: 42px; 
    margin-bottom: 2px; 
    display:none; 
} 

#acc-close-all a, #to-top a { 
    position: absolute; 
    float: right; 
    display: block; 
    height: 42px; 
    width: 29px; 
    overflow: hidden; 
    display:none; 
    cursor: pointer; 
} 

HTML

<div id="acc-close-all"> 
    <a title="Close all open tabs"><!----></a> 
</div> 
<div id="to-top"> 
    <a title="Back to top"><!----></a> 
</div> 

jQuery的

// Scroll close all and bcak to top buttons with the page 
$(window).scroll(function() { 
    var top = $(this).scrollTop(); 
    $('#acc-close-all a, #to-top a').css('top', top + "px").css("display", "inline"); 
}); 

我想这些选项卡淡入慢慢地,当用户向下滚动页面,淡化了用户靠近顶部。

我可以让它在没有显示的情况下工作:none和display:inline,但当用户向下滚动页面时它不会显示。我读过这http://api.jquery.com/scroll/,但仍然无法实现它的工作。

注意:页面只有在手风琴打开时才可以滚动。可以同时打开多个手风琴。

回答

1

您看不到链接的原因是因为其父容器(#acc-close-all#to-top)也设置为display: none,并且从未在滚动中设置可见。

#acc-close-all, #to-top { 
    position: relative; 
    left: 951px; 
    width: 29px; 
    height: 42px; 
    margin-bottom: 2px; 
} 

另外,您可以在您的滚动事件处理程序都设置父容器display: block:可以按如下方式来解决这个问题改变CSS。

这里的a simplified example与它的工作。

+0

这很酷,但我也希望它在用户滚动时再次淡出。我怎么把它放在那里? – Solidariti 2010-09-09 11:38:23

+1

没有问题 - 请参阅更新的示例,并注意它如何测试scrollTop值以确定链接是否可见或不可见:http://jsfiddle.net/773fV/1/ – Pat 2010-09-09 12:00:12

+0

这真是太棒了,可以减缓淡入淡出? – Solidariti 2010-12-02 00:26:34