javascript - 视差滚动与 JQuery 动画绊倒

标签 javascript jquery html css parallax

我用视频实现了视差效果。我想自己做,所以我在没有任何框架或插件的情况下完成了它,但速度很慢,而且到处乱跑。

我的想法是,他们面前有2张图片,1个视频和2个盒子。所以我的代码是,如果我在第 1 张图片的位置,图片滚动速度会变慢(带有 margin-top),如下所示:

$( window ).scroll(function() { 

var scroll = $(window).scrollTop(); 

   if(scroll>470){

            scroll = scroll-470;

            var scrollSlow = scroll*0.4;

        $('#Picture1').css('margin-top', scrollSlow);

    $('#InfoBox1').css('margin-top', -scroll);

            if(scroll<400){
         $('#Picture2').css('margin-top', -scroll);
    }
            $('#InfoBox2').css('margin-top', -scroll+heightPX);

            if(scroll<900){
         $('#Picture3').css('margin-top', -scroll+heightPX);
        }

      }
   }

但是如果我向下滚动它就不起作用了。

这是在线版本:http://p-goetz.de/Parallax.html

最佳答案

问题:您可能在 chrome/safari 中测试您的网站,尝试使用 Firefox,您会发现事情更流畅。

原因:在某些浏览器中,当您滚动时它们会立即跳跃 100 像素,因此您的视差动画开始看起来很奇怪。

解决方案:尝试使用具有平滑效果的自定义滚动。我会推荐 Nicescroll .

关于javascript - 视差滚动与 JQuery 动画绊倒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23298599/

相关文章:

javascript - 淡入淡出一系列图像,但一次只显示几张

html - 最小高度 Div 对齐

html - 如何仅使用 css 切换 <p> 与 html 链接

javascript - 输入字段仅接受特定数字

javascript - 在 javascript 上获取 JSON 对象内数组的索引

php - 使用 jQuery AJAX 从 Laravel 5 中的联系表单发送电子邮件

c# - 文件上传返回null

javascript - 如何将javascript变量发送到php以更改上传文件的文件名?

c# - 在 ASP.NET 网页中打开新选项卡

javascript - 这种自调用匿名函数变体背后的原因