Skrollr问题与锚目标

时间:2013-09-22 17:40:22

标签: javascript jquery html css parallax

当我使用Skrollr向下滚动页面时,我正试图将div翻过来。我已经获得了使用两个div所需的效果,但是当我尝试使用第三个时,只有第一个和最后一个div似乎有效。我在想这是因为我还没有完全理解Skrollr中data-anchor-target属性的工作原理。这是我试图使用的HTML:

<div id="skrollr-body">
        <div id="q1" data-0="top:0%;">
            Text
        </div>
        <div id="q2" data-anchor-target="#q1" data--200-bottom="top:100%;" data-top-bottom="top:0%;">
            Text2
        </div>
        <div id="q3" data-anchor-target="#q2" data--200-bottom="top:100%;" data-top-bottom="top:0%;">
            Text3
        </div>
    </div>

CSS:

body, html {
    height: 100%;
    width: 100%;
    padding: 0;
    margin: 0;
}
#skrollr-body {
    width:100%;
    height:100%;
    position:fixed;
}
#skrollr-body > div {
    overflow:hidden;
    position:absolute;
    height: 100%;
    width: 100%;
}
#q1 {
    background: url(http://2.bp.blogspot.com/-RtoJ2papsoA/UhicT91ixmI/AAAAAAAACeg/2XEhv26ZFJc/s1600/jghjgh.jpg) center center no-repeat;
    background-size: cover;
}
#q2 {
    background: url(http://2.bp.blogspot.com/-RtoJ2papsoA/UhicT91ixmI/AAAAAAAACeg/2XEhv26ZFJc/s1600/jghjgh.jpg) center center no-repeat;
    background-size: cover;
}
#q3 {
    background: url(http://iwritealot.com/wp-content/uploads/2010/02/golden-clouds-wallpaper.jpg) center center no-repeat;
    background-size: cover;
}

Fiddle here

我错过了什么,不允许所有3个div按预期行事,而不仅仅是第一个和最后一个?

感谢。

1 个答案:

答案 0 :(得分:1)

以下是没有锚点目标http://jsfiddle.net/YMYTy/1/

的示例
<div id="skrollr-body">
    <div id="q1">
        Text
    </div>
    <div id="q2" data-bottom-top="top:100%;" data-top="top:0%;">
        Text2
    </div>
    <div id="q3" data-bottom-top="top:100%;" data-top="top:0%;">
        Text3
    </div>
</div>

它与我描述的不同,但有效。

这是一个开放的功能请求,一旦实现,将使这更容易https://github.com/Prinzhorn/skrollr/issues/185然后,您可以使用data-100pdata-200p在向下滚动动画后使用动画视口高度的两倍。