滚动后使多个div位置固定

时间:2013-11-08 13:46:48

标签: javascript html css

这对我来说是一个艰难的......

我正在努力实现的是,一旦它们滚动过去,就会有多个图像粘在我的页面顶部,彼此重叠。一个很好的例子是this one

我现在拥有的是3个div,它通过JS脚本始终是用户的屏幕高度/宽度。在这些div中是图像。

<div id="part1">
    <div class="row">
        <div class="twelve columns">
            <img src="img/part1.png"> 
        </div><!-- .twelve columns -->
    </div><!-- .row -->
</div><!-- part1 -->

<div id="part2">
    <div class="row">
        <div class="twelve columns">
            <img src="img/part2.png"> 
        </div><!-- .twelve columns -->
    </div><!-- .row -->
</div><!-- part2 -->

<div id="part3">
    <div class="row">
        <div class="twelve columns">
            <img src="img/part3.png"> 
        </div><!-- .twelve columns -->
    </div><!-- .row -->
</div><!-- part3 -->

#part1, #part2, #part3 { width:100%; height:100%; }
#part1 { z-index:1; }
#part2 { z-index:2; }
#part3 { z-index:3; }
.stick { position:fixed; top:0; margin:0 auto; }

我一直在玩最常见的功能,例如:

function sticky_relocate() {
  var window_top = $(window).scrollTop();
  var div_top = $('#part1_anchor').offset().top;
  if (window_top > div_top) {
    $('#part1').addClass('stick');
  } else {
    $('#part1').removeClass('stick');
  }
}

$(function() {
  $(window).scroll(sticky_relocate);
  sticky_relocate();
});

但它没有给我想要的结果,而且不允许我为这个函数定义多个div。我的想法已经用完了,任何帮助都非常感激。

1 个答案:

答案 0 :(得分:0)

修复了这个精彩剧本的问题

Stickyscroll