2017-05-09 31 views
0

我想在同一頁面上嵌入多個玩家,但直到現在,這還沒有成功。爲了嵌入播放器,我們需要一個唯一的target_id來定位DOM的元素,然後定位特定視頻的entry_id。這是在下面的函數:kaltura在同一頁上的多個玩家

function embedPlayer() { 
    var linkPart = $('#uniqueTarget').data('entry'); 
    var conf = { 
    "targetId": "uniqueTarget", 
    "wid": "_1912616", 
    "uiconf_id": "37591811", 
    "entry_id": linkPart, 
    "flashvars": { 
     "controlBarContainer.plugin": false, 
     "inlineScript": false 
    } 
    }; 
    kWidget.thumbEmbed(conf); 
} 

下面是相關的HTML,它是動態地從WordPress的每次創建的用戶希望嵌入視頻:

<div style="width: 100%; display: inline-block; position: relative;"> 
    <div class="theRatio"></div> 
    <div id="uniqueTarget" data-entry="'+ linkPart +'" style="position:absolute;top:0;left:0;right:0;bottom:0"></div> 
</div> 

不幸的是,如果我嘗試嵌入在同一頁面上的第二個玩家只會對第一個玩家進行API調用,而第二個玩家(或其他人,如果更多)將使我獲得純HTML,並且該調用沒有完成。在https://knowledge.kaltura.com/javascript-api-kaltura-media-players#ManagingMultiplePlayersontheSamePage有一篇關於該問題的文章,但不幸的是,我的知識是有限的,我需要一些幫助。

回答

0

Kaltura建議用拇指嵌入,當你有一個頁面上的多個玩家 - 這將嵌入的縮略圖,這將發揮他們被點擊時:

拇指嵌入

該方法以相同的參數動態嵌入。當用戶在播放按鈕上單擊時,縮略圖嵌入將整個配置傳遞給kWidget.embed。當您需要在同一網頁中嵌入多個播放器/條目時,這是推薦的方法。對於ThumbEmbed的語法是相同的kWidget.embed(動態嵌入),除了我們所說的「kWidget.thumbEmbed」而不是「kWidget.embed」

還有更多的信息,包括例如Javascript和例子縮略圖瀏覽:

例的Javascript從這個鏈接(你也可以看看在瀏覽器中調試頁面,看看他們究竟是如何設置它):

<div id="myEmbedTarget" style="width:400px;height:330px;"></div> 
<script src="{{HTML5LibraryURL}}"></script> 
<script> 
    mw.setConfig("EmbedPlayer.DisableContextMenu",true); 
    kWidget.thumbEmbed({ 
     'targetId': 'myEmbedTarget', 
     'wid': '_243342', 
     'uiconf_id' : '12905712', 
     'entry_id' : '0_uka1msg4', 
    }); 
</script> 
0

爲您的每個視頻創建DIV容器 - 爲它們提供唯一ID,然後您可以定位它們並創建儘可能多的視頻。確保已加載kWidget腳本。將這個腳本在你的頁面:

function _embedVideo(targetId,wid,uiconf_id,flashvars,entry_id,cb){ 
    kWidget.embed({ 
     targetId: targetId, 
     wid: wid, 
     uiconf_id: uiconf_id, 
     flashvars: flashvars || {}, 
     entry_id: entry_id, 
     readyCallback: cb 
    }); 
} 

對於您的每個視頻,加載它們像這樣:

_embedVideo('id-of-div-container','wid-here','uiconfid-here',null,'entryid-here',yourCallbackFunc); 

這是我創造我的網頁多個視頻。一定要指定一個回調否則傳遞null。