gpt4 book ai didi

javascript - 添加EventListener后Tween.js不调用call函数

转载 作者:行者123 更新时间:2023-11-28 06:19:38 24 4
gpt4 key购买 nike

我正在使用 tween.0.6.2 并遇到了问题。

以下代码片段(取自 the tween.js Getting Started site 并稍作简化)的工作原理如下:

            createjs.Tween.get(circle)
.to({x: 400}, 1000, createjs.Ease.getPowInOut(4))
.call(function() {console.log("tween finished");});

补间完成后(圆已移动到 x=400),传递给 call 的函数将被执行。

但是在添加事件处理程序后,如下所示:

            createjs.Tween.get(circle)
.to({x: 400}, 1000, createjs.Ease.getPowInOut(4))
.addEventListener("change", function() {console.log("tween changed");} )
.call(function() {console.log("tween finished");});

传递给call的函数不再执行。

有什么想法吗?

最佳答案

对于每个遇到这个问题的人:经过一些实验,我发现这是可行的:

           createjs.Tween.get(circle)
.to({x: 400}, 1000, createjs.Ease.getPowInOut(4))
.call(function() {console.log("tween finished");})
.addEventListener("change", function() {console.log("tween changed");} )

看起来,对 call 的调用必须在对 addEventListener 的调用之前。

编辑:

仍然没有按照预期的方式工作:在上面的示例中,在执行传递给 call 的函数之后(!),事件监听器被再次调用。

关于为什么会发生这种情况的想法仍然受欢迎......

关于javascript - 添加EventListener后Tween.js不调用call函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35650666/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com