我似乎無法綁定到$ .jPlayer.event.error事件,但我可以綁定到其他事件。
我使用一個骨幹視圖控制jPlayer,和這裏的初始化函數:
initialize: function() {
_.bindAll(this, 'render', 'get_media_url', 'on_player_error',
'play', 'scrub', 'move_playhead', 'on_media_progress',
'on_player_ready', 'on_player_timeupdate', 'on_player_ended',
'set_progress_bar', 'set_current_time', 'time_from_percent');
// set up jplayer and bind essential events to view methods, bound to the current object
$(this.player).jPlayer(this.player_defaults);
$(this.player).bind($.jPlayer.event.ready, _.bind(this.on_player_ready, this));
$(this.player).bind($.jPlayer.event.timeupdate, _.bind(this.on_player_timeupdate, this));
$(this.player).bind($.jPlayer.event.ended, _.bind(this.on_player_ended, this));
$(this.player).bind($.jPlayer.event.progress, _.bind(this.on_media_progress, this));
$(this.player).bind($.jPlayer.event.error, _.bind(this.on_player_error, this));
this.current_state = this.PAUSED;
},
on_media_progress: function(event){
$('time#total').html($.jPlayer.convertTime(event.jPlayer.status.duration));
},
on_player_error: function(event){
alert(event);
},
(切斷由於簡潔的方式休息,但你會看到被定義的方法相同; on_media_progress
火災沒有失敗on_player_error
然而,NADA)
on_player_ready
,on_player_timeupdate
,on_player_ended
和on_media_progress
所有消防正確!。
on_player_error
,但是,永遠不會被調用。
我有隻被傳遞到setMedi
一個的MP3,我沒有安裝Flash和我加載在Firefox 9.0.1的頁面,但
如果我在this.player_defaults
對象設置errorsAlert: true
,jPlayer顯示它自己的錯誤對話框,但我的錯誤處理程序仍然不會觸發。
就像海盜隊長帶着輪子在褲子裏一樣,這是驅動我的堅果!
你可以使用的jsfiddle,或者我們可以有一個鏈接到您正在測試的網站? – mowwwalker
我可以做一個小提琴,但是我必須改變代碼來撕掉我們系統中綁定的部分。我會盡力在AM中完成。 – tkone
好的,你看到我的答案了嗎?我有一種感覺,'$ .jPlayer.event.error'不是一個事件,而是一個具有特定錯誤事件的類。 – mowwwalker