我使用像这样的谷歌转换的swiffy脚本
var stage = new swiffy.Stage(document.getElementById('swiffycontainer'),swiffyobject);
stage.start();
我的观点是我想在动画结束后做动作。 但我不知道如何在swiffy对象上跟踪帧。
这是我的工作之前
我在
加载页面后放入start方法(文档)$。就绪
$(窗口).load
window.onload =
并使用
跟踪时间(到达最后一帧的随机测试)setTimeout(callAtEnd(),10000);
结果:不工作;比如计算页面渲染的时间,而不是完成渲染后的时间
结果:无法正常工作
请帮助或提供其他解决方案。
非常感谢。
答案 0 :(得分:4)
$(document).ready()
将会触发。
window.onload
将会触发。但是,可能仍有其他操作异步执行。
这些都不会给你一个与swiffy时间线相关的100%准确的时间。
您需要做的是添加一些在动画完成时将触发的ActionScript。由于Swiffy仅支持Actionscript的子集,因此最简单的方法是使用getURL()
函数让Flash调用Javascript函数,例如:
getURL("javascript:animationIsComplete();");
这样,Swiffy可以直接调用你的完成处理程序,而不需要定时页面加载。
请参阅Is there any way to detect when a Swiffy animation has completed?
答案 1 :(得分:3)
您可以通过两种方式调用它:
document.onload=function() {}
window.onload = function() {}
最好使用的是document.onload,因为它将内容结构与代码分开,但这一切都取决于你拥有的javascript。
如果你想使用jQuery:
$(document).ready() {}