Я сделал индикатор выполнения для .swf
.Почему SetInterval не работает (работает только один раз)
Код в <head>
:
function ProgressBar(){
setTimeout(function(){
if (swfobject.getObjectById("Object").IsPlaying()) {
var TotalFrames = swfobject.getObjectById("Object").TotalFrames();
console.log(console.log("TotalFrames: " + TotalFrames));
var TCurrentFrame = swfobject.getObjectById("Object").CurrentFrame;
console.log(TCurrentFrame);
}
}, 200);
}
Код в <body>
:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="600" height="600" id="Object">
<param name="movie" value="./Flash.swf">
<param name="wmode" value="transparent">
<param name="loop" value="false">
<param name="play" value="false">
<param name="quality" value="high">
<!--[if !IE]>-->
<object type="application/x-shockwave-flash" data="./Flash.swf" width="600" height="600" id="Object">
<param name="wmode" value="transparent">
<param name="loop" value="false">
<param name="play" value="false">
<param name="quality" value="high">
</object>
<!--<![endif]-->
</object>
JQuery:
$("#button").on("click", function(){
ProgressBar();
})
Я хочу выход TotalFrame
и CurrentFrame
, но функция SetInterval
показывает результат только один раз.
Вывод в лог консоли:
TotalFrames: 745
undefined
102
Как я это пишу? Какая ошибка?
внимание к деталям – akonsu
@akonsu ой .. спасибо –
Относительно отредактированном вопрос: вы говорите, что до сих пор Безразлично» t работать даже после того, как вы изменили на 'setInterval()' вместо 'setTimeout()', который вы изначально имели? – nnnnnn