2013-07-27 61 views
2

我無法在buzz.js文檔中找到它,但是有沒有循環事件的綁定。像循環綁定找到循環數

soundObject.bind('looping', function(e){ 

}); 

什麼我想看看有多少次聲音對象就循環,如果任何人有解決這個庫的知識有一個解決辦法,這也將幫助。我試圖綁定到ended事件,但這不起作用?

編輯:

我想作爲我可以綁定到playing事件並使用getPercent()方法看的時候我已經打100並保持一個計數器來發現循環次數黑客攻擊?

回答

0

由於沒有事件可以用循環選項觸發,因此爲什麼不通過綁定到ended事件來實現自己的循環功能,並且再次調用play(),這樣您就可以知道每次播放何時完成。

var loopCount = 0; 
var mySound = new buzz.sound("my_cool_sound").bind('ended', function() { 
    loopCount++; 
    this.play(); 
}).play(); 

Demo fiddle

0

編輯1:

真。我以前的答案不起作用,因爲我認爲它可能:)。在閱讀source後,他們似乎沒有觸發任何公共事件。雖然他們確實似乎綁定到一些私人的,ended.buzzloop。我無法找到代碼中觸發的上述事件,但也許它可能適用於您

正如@koala建議的那樣,實現您自己的循環可能會變成更好的選擇。


舊的答案 - 不起作用!

我以前沒有用過buzz.js。閱讀文檔,我發現playing & pausedevents

當媒體開始播放(無論是第一次,已被暫停之後,或結束,然後重新啓動後)發送。

我的想法是聽這兩個事件。如果playing在沒有pause的情況下引發,那麼您可以增加您的計數。

+0

的播放事件處理程序只調用一次,除非暫停或結束已經發生那麼不會再調用。由於'loop()'從不調用結束或暫停,我的計數器將如何遞增? – Warz

+0

增加了另一個建議。 –