自訂播放程式外觀

本主題是自定義Brightcove Player外觀的入門。內容使用 Chrome 的開發工具,但所有現代瀏覽器都具有同等功能。有關在不同瀏覽器中使用開發工具的簡要介紹,請參見 調試基礎 文件。

建立自己的外觀

如果您不希望使用預設外觀並建立您自己的外觀,則可以使用播放程式管理 API 進行此操作。 播放程式組態指南 提供必要的資訊。

您可以改變播放器的外觀,但您必須先有辦法解決它。要查看此內容,請瀏覽插入了“高級”(頁面內嵌入)代碼的HTML頁面。在裡面 Elements 開發工具部分中找到 <video-js> 標籤,您將看到它具有一個帶有值的類 video-js 分配,等等。

一旦你知道這一點,你可以使用樣式來改變玩家本身。例如,要在播放器周圍添加邊框,您可以使用以下樣式:

<style> .video-js { border-style: double; border-width: thick; border-color: red; </style>

框架播放器

如果您使用播放器的標準(iframe)實現,則情況會有所不同。您仍然會看到帶有 video-js 類,但它當然會在iframe中和 video-js 標籤。

您創建的樣式仍然可以與 iframe 中的播放器一起使用,但需要創建 CSS 文件並與使用 Studio 的播放器相關聯。您可以通過轉到 玩家們 模塊,然後單擊要與CSS關聯的播放器,然後在 插件>樣式表 部分添加您的CSS文件的路徑。

如果您希望自定義iframe本身,則可以使用元素選擇器來完成。然後使用 <style> 標籤根據需要進行修改。在下面的示例中,播放器周圍添加了邊框。

<!doctype html> <meta charset="UTF-8"> <title>Untitled Document</title> <style> .video-js { border-style: double; border-width: thick; border-color: red; </style> </head> <iframe src="https://players.brightcove.net/1507807800001/default_default/index.html?videoId=6065136830001" allowfullscreen="" allow="encrypted-media" width="640" height="360"></iframe> </body> </html>

如果你想改變播放按鈕的外觀,你首先需要知道如何解決它。在Chrome中,右鍵單擊按鈕。從出現的選擇中選擇 Inspect 。當您選擇 Inspect ,Chrome的 開發工具 將打開。

在裡面 Elements 開發工具”部分,您將看到與按鈕元素相對應的HTML代碼。

從上面突出顯示的代碼,你可以看到分配給按鈕的類是 vjs-big-play-button 。播放按鈕的顏色(與老虎相匹配)和不透明度將隨著以下樣式改變:

.vjs-big-play-button { background-color: #B37D5B; opacity: .6;

你會認為這種方法會起作用,但事實並非如此。使用 CSS 時,您需要知道屬性的特殊性。這是指瀏覽器如何確定哪些屬性值得根據它們的相關性應用到一個元素。

應用按鈕更改的一種方法是在選擇器中添加另一個類。例如,您可以使用 .video-js 類以增加選擇器的特異性。有關更多詳細信息,請參見 CSS特異性 部分

然後,在 CSS 中引用玩家的大型播放按鈕,如下所示:

.video-js .vjs-big-play-button { background-color: #B37D5B; opacity: .6;

以下是將按鈕從深灰色更改為橙色的結果:

隱藏播放按鈕

您可以使用下列樣式來完全隱藏播放按鈕:

display: none;

下面的 CodePen 允許您嘗試使用播放按鈕。請注意,播放按鈕中的三角形實際上是一種字體,其大小是由 font-size 樣式控制的。

看筆 大播放按鈕定制 通過 Brightcove 學習服務( @rcrooks1969 ) 在 代碼筆 .

更改懸停文字

如果您想要更改將鼠標懸停在大播放按鈕上時顯示的文本, 播放視頻 默認情況下,對於特定於您的視頻的內容,您可以執行此操作。使用所需的慣用語作為以下參數添加以下JavaScript: controlText 方法。

videojs.getPlayer('myPlayerID').ready(function() { var myPlayer = this; myPlayer.getChild('bigPlayButton').controlText('Play Audio');

控制可見性

您可以控制是否要顯示控制欄以及其中包含的控件。如果您希望從創建播放器開始時隱藏控制欄,則可以使用以下樣式:

.video-js .vjs-control-bar { display: none;

如果您希望根據某個事件動態地執行此操作,則可以使用 controlBar.hide()/show() 方法。下面的代碼段演示了方法的使用(假設您有一個 id 的值為 myPlayer 在視頻上):

<video-js id="myPlayerID" data-account="1507807800001" data-player="default" data-embed="default" controls="" data-video-id="5781068653001" data-playlist-id="" data-application-id="" width="960" height="540"></video-js> <script src="https://players.brightcove.net/1507807800001/default_default/index.min.js"></script> <p><button onclick="hideBtn()">hide controls</button></p> <p><button onclick="showBtn()">show controls</button></p> <script> var myPlayer; videojs.getPlayer('myPlayerID').ready(function() { myPlayer = this; function hideBtn() { myPlayer.controlBar.hide(); function showBtn() { myPlayer.controlBar.show(); </script>

控件永不隱藏

您也可以使它永遠不會隱藏。為此,請使用 transform.none 風格。選擇器非常長,只要將六個類用於轉換的特異性即可。

.video-js.not-hover.vjs-has-started.vjs-paused.vjs-user-active .vjs-control-bar:not(.vjs-focus-within):not(.vjs-control-bar-visible), .video-js.not-hover.vjs-has-started.vjs-paused.vjs-user-inactive .vjs-control-bar:not(.vjs-focus-within):not(.vjs-control-bar-visible), .video-js.not-hover.vjs-has-started.vjs-playing.vjs-user-active .vjs-control-bar:not(.vjs-focus-within):not(.vjs-control-bar-visible), .video-js.not-hover.vjs-has-started.vjs-playing.vjs-user-inactive .vjs-control-bar:not(.vjs-focus-within):not(.vjs-control-bar-visible), .video-js.vjs-has-started.vjs-paused.vjs-ad-playing.vjs-user-inactive .vjs-control-bar, .video-js.vjs-has-started.vjs-playing.vjs-user-inactive .vjs-control-bar:not(.vjs-focus-within):not(.vjs-control-bar-visible){ transform: none; -webkit-transform: none; -ms-transform: none;