2016-04-28 100 views
-1

如何在图片滚动时使图片在网站上略微移动。图片在网页上滚动时在网页上移动

苹果在许多地方都在他们的网站上这样做。

http://www.apple.com/ipad-pro/

即,转到iPad Pro站点并向下滚动到A9X芯片部分。你可以看到iPad的移动速度比滚动方向稍快。上或下。非常微妙的举动,但非常整齐。

因此,图像在视图中时必须移动。我已经使用下面的代码在视图中添加了in-view类,并在它不在时删除它。现在,它需要得到其移动基于滚动...

var $animation_elements = $('img'); 
 
    var $window = $(window); 
 

 
    function check_if_in_view() { 
 
    var window_height = $window.height(); 
 
    var window_top_position = $window.scrollTop(); 
 
    var window_bottom_position = (window_top_position + window_height); 
 

 
    $.each($animation_elements, function() { 
 
     var $element = $(this); 
 
     var element_height = $element.outerHeight(); 
 
     var element_top_position = $element.offset().top; 
 
     var element_bottom_position = (element_top_position + element_height); 
 

 
     //check to see if this current container is within viewport 
 
     if ((element_bottom_position >= window_top_position) && 
 
     (element_top_position <= window_bottom_position)) { 
 
     $element.addClass('in-view'); 
 
     } else { 
 
     $element.removeClass('in-view'); 
 
     } 
 
    }); 
 
    } 
 

 
    $window.on('scroll resize', check_if_in_view); 
 
    $window.trigger('scroll');

+5

尝试谷歌搜索“视差滚动” – Pugazh

+1

获取自己的位置,获取当前的滚动位置,然后onscroll检查它们是否以某种方式相似然后触发移动。 js中的所有东西都可以用css扩展。如果你希望我们为你提供代码,即使我们可以看到你自己没有做任何事情......没有。 – Green

+1

预计您至少会尝试为自己编写代码。堆栈溢出不是代码写入服务。我建议你做一些额外的研究,无论是通过谷歌或通过搜索,做一个尝试和。如果您仍然遇到麻烦,请返回**您的代码**并解释您尝试过的以及为什么它不起作用。 –

回答