【发布时间】:2015-11-21 04:40:14
【问题描述】:
我正在为 Skrollr 滑块创建一个“有限的”视觉构建器。它允许用户构建由幻灯片(html section 标签)组成的滑块,这些幻灯片在页面上彼此下方,每张幻灯片包含许多应用了 Skrollr 数据属性/动画(关键帧?)的 html 元素。
有没有办法暂停该幻灯片(前进到下一张幻灯片),直到其所有内部元素都完成动画?
我知道示例 pausing.html 演示了我需要什么,但这些“幻灯片”已修复,可能会给我的用户带来问题。滑块将被放入大多数元素未固定的 WordPress 网站主题中。
由于幻灯片内容如此动态且不可预测,因此很难知道锁定滚动需要多长时间?希望有可能做到这一点吗?
我的困境的例子:
.... Some regular WordPress page content (Navbar, Header maybe posts, etc.)
<div id="skrollr-body">
// Pause this slides scrolling till all child elements have completed their animations
// Slide child elements will ALWAYS have relative animations (data-100-top="..." NOT data-100="...")
<section id="slide-1" class="slide">
<p data-center="opacity: 1;" data-top="opacity: 0;">Some awesomeness</p>
<img data--100-center="transform: translate(-100%,0);" data-top="transform: translate(0,0);" src="..."/>
... lots of other elements
</section>
<section id="slide-2" class="slide">
...
</section>
<section id="slide-3" class="slide">
...
</section>
</div>
.... Some regular WordPress page content (Footer, maybe posts, etc.)
【问题讨论】:
-
你能设置一个你的代码演示给我们玩吗?
-
一个 jsFiddle 会有所帮助。所有子动画是否同时开始并且它们都具有相同的动画时间?你是使用jQuery调用动画还是基于纯CSS?
-
是手动滚动,即您想阻止用户滚动直到动画完成,还是自动滚动,即动画完成后下一张幻灯片将立即滚动?