第一屏动画播放问题
按照老师教的加入了
window.onload = function () {
for (k in screenAnimateElements) {
if(k == '.screen-1'){
continue;
}
setAnimateElementInit(k);
}
}
和
setTimeout(function(){playScreenAnimateDone('.screen-1');},100)
但刷新后第一屏动画失效了。
如果不加第一段代码,只加第二段代码,第一屏动画播放时间很短,而且只有大标题有动画,其他两个动画失效。
如果不写这两句,直接放到window.onscroll中第一屏动画正常,是为什么?
正在回答
同学你好,问题解答如下:
1. 下图中的代码,要在html结构上,添加init类名,才能生效:
老师这里测试,效果是正常的,没有出现同学所说的失效的情况。建议同学检查一下代码书写是否正确,或者新建一个问题,将全部代码粘贴出来,老师测试一下。
2. 如果html结构上,手动添加了init类名,并且不写第一段代码,则会造成html结构上,同时存在init和done两个类名,如下:
两个类名,权重相同,谁写在样式的下面,元素就受谁控制;因此第二个元素,最终受到的是init样式的影响,因此没有动画效果:
3. 如果不写这两句代码,将playScreenAnimateDone('.screen-1')写在onscroll事件中,则滚动页面的时候,会正常调用第一屏动画,所以这是正常的现象。
祝学习愉快!
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星