- NW.js v0.12.3
- io.js V1.2.0
- 32位
- 的Windows 8
- Webchimera.js (player)
下面的代碼工程,但我想知道是否最佳方法。要求是獲取播放列表中每個視頻的長度。
爲此,我使用活動onPlaying和onPaused。
wjs = require('wcjs-player');
...
chimera_container = new wjs("#chimera_container");
chimera_player = chimera_container.addPlayer({ mute: true, autoplay: false, titleBar: "none" });
chimera_player.onPlaying(OnPlaying); // Pauses player
chimera_player.onPaused(OnPaused); // Extracts length information
var OnPlaying = function(){
chimera_player.pause();
};
var OnPaused = function() {
console.log(chimera_player.itemDesc(chimera_player.currentItem()).mrl , chimera_player.length());
if(!chimera_player.next())
chimera_player.clearPlaylist();
};
起初,我想這樣做的所有代碼在事件onPlaying,但應用程序總是沒有錯誤墜毀。在檢查chimera_player.state()之後,似乎即使在做了chimera_player.pause()之後,狀態並沒有改變,而是在onPlaying事件中。我數字有狀態播放並試圖做chimera_player.next()導致異常。
這種方式看起來有點亂,但我想不出另一種。
那麼會這樣做。我沒有創建一個問題,因爲我認爲這是一個「按預期工作」而不是bug。我認爲我是導致崩潰的原因之一,因爲在狀態從「玩」變爲「暫停」之前,我正在調用.length。謝謝。 – Chayemor
即使它「按預期工作」 - 它不應該導致崩潰。所以這是一個毫無疑問的錯誤。 – RSATom