div内的元素淡入淡出效果。如何实现此脚本?

时间:2019-01-08 17:06:06

标签: html css hyperlink sidebar

我正在尝试在文本中实现元素淡入(下面),但是似乎不起作用。我不知道为什么。

这是我的页面。 http://studentreportrarna.se/JMMHT18/Asfaltsnomaderna/

$(window).scroll(function(){
    $(".top").css("opacity", 1 - $(window).scrollTop() / 250);
  });

/*win.scroll(function(){
  scrollPosition = win.scrollTop();
  scrollRatio = 1 - scrollPosition / 300;
  $(".top").css("opacity", scrollRatio);
*/





/*$(window).scroll(function(){
    var scrollVar = $(window).scrollTop();
    $('.top').css("opacity", 1 - scrollVar/300);
})*/
body {
  margin: 0;
  height: 1000px;
}

.top {
  margin: 0;
  position: relative;
  width: 100%;
  background-color: #aaa;
  height: 300px;
  opacity: 1;
  text-align: center;
  font-family: 'helvetica';
  font-size: 80px;
  font-weight: 100;
  color: #fff;
}

.title {
  position: absolute;
  top: 60%;
  left: 100px;
}
<div class="top"><div class="title">Fade Away</div></div>

2 个答案:

答案 0 :(得分:0)

似乎您缺少花括号。要实际使用jQuery更改CSS,您应该编写:

$(window).scroll(function(){
    $(".top").css({"opacity", 1 - $(window).scrollTop() / 250});
});

就像普通的CSS属性一样。

答案 1 :(得分:0)

/ 250的结果是否需要为整数(无小数),并且需要在其后指定“%”吗?

编辑-作为答案。 **另外,您需要在属性和值之间添加“:”,而不是“,”

$(".top").css({"opacity": Math.round(1 - $(window).scrollTop() / 250) + "%"});