布萊特灣球員樣本:當視訊開始時停止頁面上的其他播放程式

在本主題中,您將學習如何在其中一個播放器中開始播放視頻時暫停頁面上的所有其他Brightcove播放器。本文檔中描述的功能需要Brightcove Player 5.0.3或更高版本。

播放器範例

開始播放其中一個視頻。接下來,在其他播放器中播放視頻,然後在另一個正在播放的播放器中觀看視頻停止播放。

看筆18179在視頻開始時停止其他玩家頁面通過Brightcove學習服務( @ rcrooks1969) 上密碼筆

原始碼

觀看GitHub上的完整解決方案

使用編碼器

以下是一些有效使用上述 CodePen 的提示:

  • 按一下Result按鈕來切換播放器的實際顯示。
  • 按一下HTML/CSS/JS按鈕以顯示其中一種代碼類型。
  • 在本文件後面,應用程序中使用的邏輯,流程和樣式將在播放器 /HTML 配置應用程序流程和應用程序樣式部分中討論。跟著這些章節中的資訊一起遵循的最佳方式是:
    1. 點擊 CodePen 中的EDIT ON CODEPEN按鈕,並在一個瀏覽器/瀏覽器選項卡中提供的代碼。
    2. 在 CodePen 中,調整您要顯示的程式碼。您可以在 CodePen 中變更不同的程式碼區段的寬度。
    3. 在其他瀏覽器/瀏覽器選項卡中查看播放器 /HTML 配置應用程序流程和/或應用程序樣式部分。您現在可以遵循程式碼說明,並同時檢視程式碼。

開發順序

通常,對於樣本,本節將建議一種從一頁轉移到使用Brightcove Player插件的開發方法。在這種情況下,該代碼將一致地作用於頁面中的所有播放器,並且無法作為插件分配給一個播放器,因此不會顯示任何插件代碼。

使用的 API /外掛程式資源

API 方法 API 事件
播放() 播放
暫停()  

播放器/HTML 配置

本節詳細說明玩家建立期間所需的任何特殊配置。此外,除了頁面內嵌播放程式實作程式碼之外,還會說明必須新增至頁面的其他 HTML 元素。

播放程式組態

Brightcove Player不需要特殊配置,但是HTML內的頁面上有三個不同的播放器<div>用於佈局控制的標籤。

其他 HTML

不會將其他 HTML 元素新增至頁面。

應用程式流程

這個應用程序背後的基本邏輯是:

  • 確定頁面上有多少個播放器。
  • 循環播放播放器,將它們初始化為Brightcove播放器,並設置一個play每個事件監聽器。
  • 每次play處理事件後,循環播放器並暫停所有沒有調度事件的播放器名稱的播放器。

在播放器上創建一個循環,並為每個播放器分配一個事件處理程序

找到標記的代碼:

// ### Determine the available player IDs ###

如果頁面上有多個播放器,它們將存儲在對象名稱中videojs.players按鍵是玩家的名字。您使用JavaScript Object.keys()方法提取循環所需的播放器名稱,而不是實際的播放器對象。在循環中,您分配一個事件處理程序,然後將播放器推入數組。

處理play事件並停止其他玩家玩

找到標記的代碼:

// ### Handle all players' play event ###

每當處理播放事件時,您都將從事件對像中提取播放器名稱(id),然後遍歷所有播放器並暫停所有播放器,然後使用沒有剛剛開始播放視頻的播放器的名稱。

應用程式樣式

用於頁面的CSS控制多個播放器的佈局。