我使用的是swfobject.js 2.2版 .
我调用swfobject.embedSWF,最后一个参数(callbackFn)设置为我的Javascript代码中的本地函数 .
之后,调用两个不同的例程:1 . 我的回调函数2.'onYouTubePlayerReady',这是由swfobject API定义的回调函数 .
这两者之间有什么区别,为了确保视频已上传并准备播放,我应该依赖哪一个?
我问这个,因为在Safari上,只调用了我的回调函数,所以我需要知道依赖它是否安全 .
我使用的是swfobject.js 2.2版 .
我调用swfobject.embedSWF,最后一个参数(callbackFn)设置为我的Javascript代码中的本地函数 .
之后,调用两个不同的例程:1 . 我的回调函数2.'onYouTubePlayerReady',这是由swfobject API定义的回调函数 .
这两者之间有什么区别,为了确保视频已上传并准备播放,我应该依赖哪一个?
我问这个,因为在Safari上,只调用了我的回调函数,所以我需要知道依赖它是否安全 .
1 回答
onYouTubePlayerReady
不是SWFObject方法,它是YouTube播放器API提供的独立方法 .您的问题可能归结为时间 - 因为
onYouTubePlayerReady
是YouTube播放器API的一部分,在SWF完成加载并且Flash Player初始化了ExternalInterface之后,它才会可用 .SWFObject的
callbackFn
只是在<object>
已成功添加到页面标记时执行,并且不表示SWF已加载 . 实际上,SWFObject并不关注SWF是否加载 .但是,通过一些额外的JavaScript,您可以轮询SWF以检测它是否已完成加载,然后执行您的自定义脚本(在本例中为
onYouTubePlayerReady
) .这个Stack Overflow thread讨论了民意调查,这里是a short tutorial explaining how to poll after embedding a SWF via SWFObject .