js怎么判断flash是否加载完毕了呢?
我们怎么在flash加载完毕之时,回调一个我们设定的js函数?
这个问题,一直困扰了我很久,直到今天,请教了一个非常牛B的人物之后,突然来了感觉!
呵呵,也许,这个问题在你们看来不是问题,不过对于我来说,确实是个问题,因为我一直不知道该怎么判断swf文件是否加载完毕了?
从前都是只知道img.onload等等。
好了,言归正传,我们到底该怎样判断一个flash是否加载完了呢?
没错,就是轮询,然后判断flash的某个方法是否能正常运行?
示例如下(伪代码):
(function () { var flash = 网页上某个flash对象。 var interval = setInterval(function () { try { if(flash.IsPlaying()) { //轮询flash的某个方法即可 callBack && callBack.call(flash, args); //回调函数 clearInterval(interval); } } catch (ex) { } }, 1000); var callBack = function () { alert('loaded'); } })();
//具体运用时,flash放进setInterval或者setTimeout的函数闭包中时,可能会由于JavaScript单线程问题,导致flash不能调用IsPlaying等flash player函数或者调用结果不对等状况,这里有个临时的解决办法,我们可以读取在轮询函数中读取flash的TotalFrames属性,读取得到,我们就可以认为flash已经完全加载到页面中了!!!
经测试,确实可行,不过可能会有1—2秒的时间延迟。
/////////////有什么不对的地方,欢迎勘误!!!!!!!!!//////////////
/*后面附上可控制Flash Player的js方法列表*/
Play() ---------------------------------------- 播放动画
StopPlay()------------------------------------停止动画
IsPlaying()----------------------------------- 动画是否正在播放
GotoFrame(frame_number)---------------- 跳转到某帧
TotalFrames()------------------------------- 获取动画总帧数
CurrentFrame()------------------------------回传当前动画所在帧数-1
Rewind()-------------------------------------使动画返回第一帧
SetZoomRect(left,top,right,buttom)-------放大指定区域
Zoom(percent)------------------------------改变动画大小
Pan(x_position,y_position,unit)------------使动画在x,y方向上平移
PercentLoaded()----------------------------返回动画被载入的百分比
LoadMovie(level_number,path)----------- 加载动画
TGotoFrame(movie_clip,frame_number)- movie_clip跳转到指定帧数
TGotoLabel(movie_clip,label_name)------ movie_clip跳转到指定标签
TCurrentFrame(movie_clip)--------------- 回传movie_clip当前帧-1
TCurrentLabel(movie_clip)-----------------回传movie_clip当前标签
TPlay(movie_clip)---------------------------播放movie_clip
TStopPlay(movie_clip)----------------------停止movie_clip的播放
GetVariable(variable_name)-----------------获取变量
SetVariable(variable_name,value)-----------变量赋值
TCallFrame(movie_clip,frame_number)---call指定帧上的action
TCallLabel(movie_clip,label)----------------call指定标签上的action
TGetProperty(movie_clip,property)--------获取movie_clip的指定属性
TSetProperty(movie_clip,property,number)-设置movie_clip的指定属性
本文向大家介绍在css加载完毕后自动判断页面是否加入css或js文件,包括了在css加载完毕后自动判断页面是否加入css或js文件的使用技巧和注意事项,需要的朋友参考一下 最近在写项目的framework,写个JQueryMessageBox的类,以使用jquery ui中的dialog()来显示消息框,为了使方法方便调用,便加入了自动判断页面是否加入了ui.js和ui.css,代码如下: 但CS
本文向大家介绍JavaScript & jQuery完美判断图片是否加载完毕,包括了JavaScript & jQuery完美判断图片是否加载完毕的使用技巧和注意事项,需要的朋友参考一下 众所周知,常见瀑布流当鼠标滚动到浏览器底部的时候,就会发起一个ajax的请求。在服务端生成item列表后,通过 js append到相应的div里边。 看起来很简单的样子,关键问题就出在图片的加载问题上,图片一般
本文向大家介绍js 判断图片是否加载完以及实现图片的预下载,包括了js 判断图片是否加载完以及实现图片的预下载的使用技巧和注意事项,需要的朋友参考一下 创建一个Image对象,实现图片的预下载,如果图片已经存在于浏览器缓存,直接调用回调函数,使用onload事件可以判断图片是否加载完成
本文向大家介绍html5怎么判断app是否安装?相关面试题,主要包含被问及html5怎么判断app是否安装?时的应答技巧和注意事项,需要的朋友参考一下 例如,打开微信 是用了微信自己的 wechat://xxxx 这样类似http/https的协议,来打开。支付宝是alipay,其他的应用都有不同的自己的协议头,通过这样的链接来唤醒APP。如果打不开就能判断是否安装该APP
本文向大家介绍jQuery 判断图片是否加载完成方法汇总,包括了jQuery 判断图片是否加载完成方法汇总的使用技巧和注意事项,需要的朋友参考一下 对于图片的处理,例如幻灯片播放、缩放等,都是依赖于在所有图片完成之后再进行操作。 今天来看下如何判断所有的图片加载完成,而在加载完成之前可以使用 loading 的 gif 图表示正在加载中。 一、普通方法 监听 img 的 load 方法,每 loa
本文向大家介绍html5怎么判断是否在wifi环境?相关面试题,主要包含被问及html5怎么判断是否在wifi环境?时的应答技巧和注意事项,需要的朋友参考一下 https://developer.mozilla.org/en-US/docs/Web/API/Network_Information_API