使用 usingAdBlocker() 方法
Brightcove Player 有一種方法可以檢查播放視頻的瀏覽器是否正在使用廣告攔截器。這個方法是使用 AdBlocker()
.一旦確定是否檢測到廣告攔截器,您的業務規則將指導您採取進一步行動。在下面的示例中,三個廣告將在視頻中顯示,或者如果檢測到廣告攔截器,則會在播放器下方顯示一條消息。
如果您沒有安裝用於測試的廣告攔截器,對於此示例,當檢測到廣告攔截器時,將顯示以紅色框顯示的消息:
實作
以下代碼是使用使用 AdBlocker()
方法。基本上代碼執行以下操作:
- 使用承諾來檢查並查看是否檢測到廣告攔截器。
- 如果是,則動態創建一個段落並將其插入到預先存在的
分區
.
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Untitled Document</title>
</head>
<body>
<div style="width: 600px;">
<video-js id="myPlayerID"
data-account="1752604059001"
data-player="ZDaDSLULho"
data-embed="default"
controls=""
data-video-id="5701193190001"
data-playlist-id=""
data-application-id=""
width="600" height="337.5" class="vjs-fluid"></video-js>
</div>
<script src="https://players.brightcove.net/1752604059001/ZDaDSLULho_default/index.min.js"></script>
<div id="ad-blocker-note"></div>
<script>
videojs.getPlayer('myPlayerID').ready(function () {
var myPlayer = this;
myPlayer.usingAdBlocker().then( hasBlocker => {
if (hasBlocker) {
var newP = document.createElement("p");
newP = '<strong>Ads will not play as you are using an ad blocker.</strong>';
document.getElementById("ad-blocker-note").insertAdjacentHTML('afterbegin', newP);
}
});
</script>
</body>
</html>
當然,你可以使用一個如果
JavaScript 邏輯語句。
videojs.getPlayer('myPlayerID').ready(function () {
var myPlayer = this;
if (myPlayer.usingAdBlocker()) {
var newP = document.createElement("p");
newP = 'This ad will not play as you are using an ad blocker.';
document.getElementById("ad-blocker-note2").insertAdjacentHTML('afterbegin', newP);
}
});