lufy's legend

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 20110|回复: 11
打印 上一主题 下一主题

关于动画加快的问题

[复制链接]

7

主题

1

好友

211

积分

帐下督

Rank: 2

跳转到指定楼层
楼主
发表于 2019-11-14 15:48:15 |显示全部楼层 |倒序浏览
lufy,您好
我想在ionic中使用lufy,做了一个简单的动画demo,一共两个页面,如下图所示,第一个页面中只有一个链接跳转,第二个页面是一个动画。
问题描述:当点击动画跳转到第二个页面,然后再从第二个页面点击返回,回到第一个页面,再点击动画跳转到第二个页面,会发现动画变快了,请问是什么原因导致的,是否有解决方法呢?
附上github地址:https://github.com/ningbnii/ionic_lufy_demo1.git
运行方法:ionic serve
回复

使用道具 举报

7

主题

1

好友

211

积分

帐下督

Rank: 2

沙发
发表于 2019-12-1 09:18:07 |显示全部楼层
lufy,您好!
我测试了新版本,问题已经解决,动画不在加快了。
有个新的问题,问题描述:我在ENTER_FRAME事件中,打印了一个自增的值,发现返回上一页的时候,计时器仍然在跑,再次进入后,会重新增加一个新的计时器,然后会发现同时存在两个计时器。
我想在离开页面的时候,停止当前计时器,请问有没有办法主动停止计时器呢?
回复

使用道具 举报

7

主题

1

好友

211

积分

帐下督

Rank: 2

板凳
发表于 2019-12-3 10:48:39 |显示全部楼层
感谢lufy的关注,我在页面离开的时候,removeAllEventListener,这样计时器可以停止了
回复

使用道具 举报

7

主题

1

好友

211

积分

帐下督

Rank: 2

地板
发表于 2019-12-3 12:56:52 |显示全部楼层
发现如果将LInit的参数设置为requestAnimationFrame,又会出现动画加快的问题了
回复

使用道具 举报

7

主题

1

好友

211

积分

帐下督

Rank: 2

5#
发表于 2019-12-4 11:33:18 |显示全部楼层
我做了一个新的demo,地址https://github.com/ningbnii/ionic_lufy_demo

点击动画,返回首页,然后再点击单指移动,返回首页,再点击动画,动画就会加快
回复

使用道具 举报

7

主题

1

好友

211

积分

帐下督

Rank: 2

6#
发表于 2019-12-5 09:13:28 |显示全部楼层
lufy 发表于 2019-12-5 09:09
我看了代码,你相当于一个页面里用了多个canvas,
不能考虑一下只用一个canvas吗? ...

嗯,是这样的,每个页面里面都有一个canvas,我就是想测试一下是否可行,因为我感觉css定位比canvas要方便一些,这样可以用css来控制定位,涉及动画的部分用lufy来做
回复

使用道具 举报

7

主题

1

好友

211

积分

帐下督

Rank: 2

7#
发表于 2019-12-5 09:21:23 |显示全部楼层
lufy 发表于 2019-12-5 09:16
因为这样会导致多次调用引擎的初始化函数LInit,所以才会导致上述的问题的,
如果可以考虑iframe的话,倒 ...

哦,是否有方法可以主动清除初始化的状态呢,让页面再次进入的时候重新初始化,因为这个ionic可以监听到页面离开事件,我想在这个事件中做一些处理
回复

使用道具 举报

7

主题

1

好友

211

积分

帐下督

Rank: 2

8#
发表于 2019-12-5 09:47:32 |显示全部楼层
lufy 发表于 2019-12-5 09:36
其实虽然你使用了多个canvas,但是页面里也只是一个canvas有效而已,
所以,你可以只用一个canvas,然后 ...

好的,感谢lufy,我试一下
回复

使用道具 举报

7

主题

1

好友

211

积分

帐下督

Rank: 2

9#
发表于 2019-12-5 16:53:51 |显示全部楼层
我测试发现使用requestAnimationFrame会出现动画加速的问题,使用数值没有问题
回复

使用道具 举报

7

主题

1

好友

211

积分

帐下督

Rank: 2

10#
发表于 2019-12-6 10:05:40 |显示全部楼层
本帖最后由 ningbnii 于 2019-12-6 10:09 编辑
lufy 发表于 2019-12-6 08:05
动画加速具体在什么情况下发生?

当两个页面的LInit的speed值不一致的时候,比如A为500,B为50,打开A动画慢,打开B动画快,这时候再打开A,会发现动画和B一样快了,感觉是取了最大值
如果所有页面speed都一样,就不会出现动画变快的现象
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

防止垃圾广告,请填写任意字符

Archiver|lufy's legend

GMT+8, 2024-5-2 19:31 , Processed in 0.054874 second(s), 24 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部