【问题标题】:How to make element fade in on page scroll?如何使元素在页面滚动时淡入?
【发布时间】:2011-11-28 03:00:52
【问题描述】:

我的页面中有以下元素:

<div id="banner" class="disappear">Hello</div>

这个元素的 CSS 是:

#banner {position:fixed;}
.disappear {opacity:0;}
.appear {opacity:1;}`

我想知道如何在页面滚动到某个点时使用jQuery将类从.disappear更改为.appear,然后在页面返回到原始位置时返回.disappear

【问题讨论】:

    标签: jquery html css opacity onscroll


    【解决方案1】:

    查看 jQuery Waypoints

    使用这个插件,你可以做这样的事情:

    <div id="banner">Hello</div>
    

    还有你的 jQuery:

    $("#banner").waypoint(function(){
        $(this).fadeIn(750);
    },{
        offset: 'bottom-in-view'
    });
    

    【讨论】:

    • 谢谢!航点正是我想要的!我试试看。
    【解决方案2】:

    我没有做一个完整的工作示例。但是每次窗口滚动时您都需要使用$(window).scroll(function(){ 来执行。然后在该函数中,您需要检查$(window).scrollTop() 以确定用户滚动了多远。

    http://jsfiddle.net/s8dhy/

    然后基于该值,您将添加和删除类或fadeInfadeOut。标题说你想要“淡出”,在这种情况下你会想要使用fadeInfadeOut。如果您只想添加和删除一个类,请使用addClassremoveClass

    【讨论】:

    • 谢谢。我想我会尝试 Purmou 的建议,因为我对 JS 不是很精通,但我可以按照说明进行操作:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-15
    • 2013-04-28
    • 2020-11-30
    • 2010-12-01
    • 2021-03-21
    • 1970-01-01
    • 2017-08-05
    相关资源
    最近更新 更多