javascript - 使用 jquery 更改基于滚动的淡出 div

标签 javascript jquery html css

这是我的代码:http://jsfiddle.net/spadez/Fq5K4/

我想让它在用户向下滚动页面时,顶部的图像变黑,我向下滚动得越多,整个 block 就完全变黑了。这种技术可以在这里看到:

http://www.metalabdesign.com/work/

我能找到的最接近的代码是这样的:http://jsfiddle.net/HsRpT/6/ :

$(window).scroll(function() {
    var el = $('.block');    
    var offset = el.offset();  
    var opacity = ( (offset.top - el.height() ) / 100 ) * -1;
    $('.block').css('opacity', opacity );
});

最佳答案

你会这样做:

$(window).on('scroll', function() {
    $('.block').css('opacity', function() {
        return 1 - ($(window).scrollTop() / $(this).outerHeight());
    });
});

FIDDLE

ANOTHER FIDDLE

关于javascript - 使用 jquery 更改基于滚动的淡出 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21368672/

相关文章:

javascript - react 已编辑。来自另一个组件的触发函数: TypeError: refreshmap is not a function

javascript - JavaScript 有没有办法截取 silverlight 元素的屏幕截图?

javascript - 确保页面上的所有单选按钮均已选中。

android - Android 版 Gmail 中的表格元素未展开 100%

javascript - Angular2 映射 -> 订阅数据类型错误(类型 'length' 上不存在属性 'ErrorObservable'。)

javascript - 如何更改jspdf中的线条颜色?

wcf - 使用 jQuery 访问 JSON WCF 服务时未找到 404

jquery - 使用 jQuery 防止点击第二个按钮

html - 如何设计网页以在粘贴到 MS Word 时将格式丢失降至最低

php - 使用 PHP 动态创建 Javascript 的更简单方法