Div 在滚动时的某个点淡入

Posted

技术标签:

【中文标题】Div 在滚动时的某个点淡入【英文标题】:Div to fade in at certain point on scroll 【发布时间】:2014-02-23 00:01:42 【问题描述】:

我在蓝色横幅上方有一个白色标题,当我向下滚动到我的网站正文时,标题在网站的白色背景中有点丢失,我想添加一点阴影(使用 jpeg 文件)但我只希望它出现在蓝色横幅之后,这可能吗?这是我目前所拥有的?

这里是 javascript

<script>
var divs = $('.line');
$(window).scroll(function()
   if($(window).scrollTop()<101)
         divs.fadeOut("slow");
    else 
         divs.fadeIn("slow");
   
);
</script>

这里是 CSS

.line 
  position: fixed;
  z-index: 100000;
  margin:0 auto;
  top:0px; width:100%;
  background:#ff0000;

任何帮助将不胜感激。谢谢大家

【问题讨论】:

Show Div when scroll position 的可能重复项 为什么 javascript 在样式标签内。还是只是一个错字。 你已经很好地提出了你的问题并展示了你到目前为止所做的事情。但是,您从未告诉我们您的方法有什么问题。是在错误的时间显示 div 吗?在控制台中显示错误?一点效果都没有? 谢谢 :) 好吧,我在 jsfiddle 上运行得很好,但是当我在我的网站中实现它时,“行”在页面顶部是静态的。 问题解决了!我不确定为什么,但是当我将 javascript 移到 【参考方案1】:

基于将脚本块移动到&lt;/body&gt; 之前的修复,问题是您的脚本块在页面内容加载之前执行。具体来说,var divs = $('.line'); 没有找到任何匹配的元素。

执行此操作的另一种方法是将脚本放置在您想要的任何位置(在&lt;head&gt; 中,最好从另一个文件链接)并导致此代码仅在文档加载后运行:

$(function()
  // This code runs when the document is ready.
  // Put your code here.
);

或者(不太理想)您可以执行您所做的操作:将脚本块放在文档底部,紧邻 &lt;/body&gt; 之前。

【讨论】:

以上是关于Div 在滚动时的某个点淡入的主要内容,如果未能解决你的问题,请参考以下文章

如何淡出,淡入窗口滚动的div?

当用户滚动到页面的最底部时淡入/淡出固定位置 div

导航上的淡入淡出和滑动效果(jQuery)

使用滚动条淡入一堆图像(div)

当我滚动过去某个部分的某个部分时,某些元素不会淡入

jQuery - 滚动上的淡出/“滚动停止”上的淡入