javascript - 当元素向上滚动到页面顶部时,我想将元素的不透明度从 0 更改为 1

标签 javascript jquery html css twitter-bootstrap

我在我的页面上使用 twitter-bootstrap 并且我有一个视频背景。看起来像这样https://jsfiddle.net/Leytgm3L/41/ .当用户向下滚动时,黑色部分开始出现,首先它的不透明度设置为 0,但是当用户继续滚动时 - 当他到达该部分的末尾时它变为 1。我想更改它,因此当该部分完全显示在屏幕上时,该部分会将不透明度设置为 1,这样当该组件在页面上完全可见时,用户将看到该组件的黑色背景。 所以这不好:http://i.imgur.com/dBtLqpq.png ,但像这样的是:http://imgur.com/a/elZv5 我试着去:

$("#black").css("opacity",$("body").scrollTop()/1000);

但是没有用。你能帮我吗?

最佳答案

下面是一些代码,当用户向下滚动时改变不透明度,从文档顶部的不透明度 0 开始,当他们到达元素时变为不透明度 1:

$("#black").css("opacity",1 -($("#black").offset().top - $("body").scrollTop()) / $("#black").offset().top);

它的工作原理是将黑色元素在页面上的位置与当前滚动值进行比较。为了提高性能,您可以缓存 jQuery 选择器和对 .offset 的调用。


JSFiddle:http://jsfiddle.net/Leytgm3L/45/

关于javascript - 当元素向上滚动到页面顶部时,我想将元素的不透明度从 0 更改为 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31733190/

相关文章:

html - 具有可随文本输入调整大小的灵活背景图像的文本区域

php - 基于 PHP 变量嵌入 YouTube 视频

javascript - 为什么每个 Ember 数据存储事务都会向服务器发送额外的 OPTIONS 请求?

c# - JQuery 从 aspx 页面中获取数据

javascript - 对对象数组进行排序,然后按 id 分组 (JavaScript)

javascript - 如何用JS在网站内显示 "window"?

javascript - AngularJS:以粗体显示表达式的一部分

javascript子函数将返回值传递给父函数返回值

jquery - 使用 jQuery 切换类

javascript - 让 css 对象在悬停和单击时发生变化