Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 视差滚动的全视口高度图像_Javascript_Jquery_Html_Css_Parallax - Fatal编程技术网

Javascript 视差滚动的全视口高度图像

Javascript 视差滚动的全视口高度图像,javascript,jquery,html,css,parallax,Javascript,Jquery,Html,Css,Parallax,我希望无论屏幕大小如何,页面的某些部分至少填写100%的视口高度。我还希望各节的内容和背景以视差效果滚动 我在页面上有jQuery,并使用以下命令将节.parallax调整为全视口高度: var imageFit = function() { windowHeight = $(window).height(); $('.parallax').css('min-height', windowHeight); }; $(document).ready(imageFit); $(window

我希望无论屏幕大小如何,页面的某些部分至少填写100%的视口高度。我还希望各节的内容和背景以视差效果滚动

我在页面上有jQuery,并使用以下命令将节
.parallax
调整为全视口高度:

var imageFit = function() {
  windowHeight = $(window).height();
  $('.parallax').css('min-height', windowHeight);
};

$(document).ready(imageFit);
$(window).resize(imageFit);
我知道单位
vh
vw
但我不想使用它们,因为浏览器支持较差。(顺便说一句,我对javascript非常不在行,所以如果可能的话,请帮助我改进这一点)


这是一支具有100%视口高度部分的笔:(如果不熟悉Codepen,请单击左下角的编辑编辑代码)

这很好,但是我不知道如何实现视差效果。我尝试使用修改CSS属性来创建视差效果。但是,由于我的<代码>章节<代码>从上面的脚本获得了完整的视口高度<代码>高度> /代码>值,看起来Skrollr不认为它有任何高度,从而使视差“过渡”在我滚动时立即发生。没有上面的调整脚本,它工作得非常好

遗憾的是,我无法为您设置一个使用Skrollr的示例,但我通过在CSS中为我的部分指定一个高度值X px来确认这一点,然后Skrollr在滚动第一个X px时正常工作

因此,我的问题如下: 如何让Skrollr识别上面脚本设置的
高度

或者

有没有更好/更简单的方法来创造我想要的效果?通过另一个滚动动画库或使用不同的方法填充视口高度?

不要忘记在
imageFit
末尾调用

如果你也包括在内,那就简单到

var imageFit = function() {
   windowHeight = $(window).height();
   $('.parallax').css('min-height', windowHeight).refresh();
};

这真的很简单,很好!脚本是否暗示只刷新
.parallax
,而不是文档中的每个元素?谢谢你的Skroller,顺便说一句,它似乎正合我的意。:-)@NilsKaspersson“脚本暗示只刷新.parallax,而不是文档中的每个元素”。你这是什么意思?
refresh
jQuery帮助程序将只刷新所选元素(
.parallax
)。您回答了我的问题。我对javascript知之甚少。再次感谢!:-)我可能太快了,不能说这个问题已经解决了;这似乎解决了视差绝对模式,但问题仍然存在于相对模式。有没有关于我做错了什么的想法?也许可以提出一个新问题,并举例说明。