2011-09-30 24 views
0

首先,我不能升級到播放器的新版本,因爲我需要的displayclick =全屏選項來工作,它不與版本5JWPlayer 4 JavaScript事件被忽略

所以,我需要做的是:讓玩家在頁面上自動啓動,沒有音量和控件(這很好用),當用戶點擊屏幕時,播放器必須全屏顯示,音量必須打開。

問題是所有的JavaScript交互似乎被播放器完全忽略,我真的不知道問題出在哪裏。

當加載頁面時,我嵌入播放器:

var so = new SWFObject('path_to_player.swf','div_id','200','120','10'); 
so.addParam('allowfullscreen','true'); 
so.addParam('allowscriptaccess','sameDomain'); 
so.addParam('bgcolor','#000000'); 

so.addParam('flashvars','file=path_to_playlist.xml&autostart=true&displayclick=fullscreen&controlbar=none&volume=0&icons=false&image=path_to_thumb.jpg'); 
so.write('div_id'); 

這似乎工作得很好,播放器加載。

然後我添加事件偵聽器:

var player = null; 
function playerReady(p) { 
    player = document.getElementById(p.id); 
    addListeners(); 
} 

function addListeners() { 
    if (player) { 
     console.log('add the listener'); 
     console.log(player.getConfig().volume); 
     player.addControllerListener("RESIZE", "checkResize"); 
    } else { 
     setTimeout("addListeners()", 100); 
    } 
} 

function checkResize(obj) { 
    console.log('resized'); 
    if (obj.fullscreen) { 
     player.sendEvent("VOLUME", "60"); 
    } else { 
     player.sendEvent("VOLUME", 0); 
    } 
} 

「添加監聽器」的信息被顯示在控制檯,但第二個,隨着玩家的音量不會,而且也不在「調整「當玩家進入或退出全屏時(當然,音量不打開)。

我試過其他聽衆,既模型和控制器,他們似乎並沒有工作。發送事件也不起作用。

我試着單獨運行播放器的代碼,以確保沒有其他干擾代碼的事情,但我仍然有同樣的問題。

回答

0

好吧,似乎我自己找到了答案。升級到swfobject的更新版本並使用swfobject.embedSWF()似乎工作得很好。