2011-02-17 55 views
0

我正在爲LongtailVideo JW播放器寫一個插件,它是AS3。我得到了一個聽衆獲取當前的播放時間和一個Timer()計算視頻播放的秒數(我開始 - 停止緩衝區上的Time(),暫停...)AS3輸入非真如果

事情是,我需要一旦播放時間達到30秒,就會觸發另一個事件,所以我使用獲取播放時間的偵聽器(不斷髮射),並檢查Timer()的值是否爲30,如果是,我會我的東西,如果沒有,沒有。

這是代碼片段:

private function countCheck(event:MediaEvent):void {    
     if(timeCounter.currentCount == 30){ 
      ExternalInterface.call("console.log" , "Time elapsed " + timeCounter.currentCount); 
     } 
    }  

timeCounter已被宣佈爲定時器,它的工作好了,事情是,它進入,如果(和顯示日誌),即使timeCounter.currentCount不是30 ,我不知道我做錯了什麼!

這是控制檯輸出:

Time elapsed 0 
Time elapsed 0 
Time elapsed 30 (5x) 

我不介意重複一次,我到了30,我可以添加一個標誌,並做動作只有一次。

有什麼想法?

編輯:我重新編譯使用Flash CS4,它工作正常,很奇怪。我認爲Christophe Herreman是對的,改變環境改變了緩存,所以它工作。

+0

基於控制檯的輸出結果,是從0,0,30跳?你有沒有試過從閃存運行調試器,看看它在踢什麼東西? – TNC 2011-02-17 10:29:37

+0

要獲得調試器,我需要安裝Flash,對吧?我正在使用Flex SDK編譯AS。它在0上進入兩次,然後在30上再次進入。有時它在31上也是這樣,這很奇怪!我將嘗試使用Flash調試器。 – Adirael 2011-02-17 10:34:05

回答

1

您是否試圖清理您的項目?它看起來可能是一個緩存版本的代碼仍在運行。

(張貼這是我的意見後答案似乎解決該問題)