我试图在Azure Media Player上自定义我自己的静音和取消静音按钮。 当我为静音和取消静音按钮添加2个单独的按钮时,它们工作得很好。但无论何时他们合并。静音是触发但是取消静音不起作用。 我试图在这里实现的只是单击一个按钮来静音和取消静音。
以下是两个按钮的示例代码:
<h1>Sample: Clear</h1>
<video id="azuremediaplayer" class="azuremediaplayer amp-default-skin amp-big-play-centered" tabindex="0"></video>
<button type="button" onclick="playVid()">Play</button>
<button type="button" onclick="pauseVid()">Pause</button>
<button type="button" value="mute" id="mute" onclick ="muteVid()">Mute</button>
<button type="button" value="mute" id="mute" onclick="unMuteVid()">UnMute</button>
<script>
function pauseVid(){
myPlayer.pause();
}
function playVid() {
myPlayer.play();
}
function muteVid() {
myPlayer.muted(true);
}
function unMuteVid() {
myPlayer.muted(false);
}
</script>
然后是静音和取消静音组合的示例代码:
<video id="azuremediaplayer" class="azuremediaplayer amp-default-skin amp-big-play-centered" tabindex="0"></video>
<button type="button" onclick="playVid()">Play</button>
<button type="button" onclick="pauseVid()">Pause</button>
<button type="button" value="mute" id="mute" onclick ="muteVid()">Mute</button>
<script>
function pauseVid(){
myPlayer.pause();
}
function playVid() {
myPlayer.play();
}
function muteVid() {
if (myPlayer.muted(false)) {
myPlayer.muted(true);
} else {
myPlayer.muted(false);
}
}
我很难确定运营商的语法。
答案 0 :(得分:1)
您需要更改静音功能,如下所示:
function muteVid() {
if (!myPlayer.muted()) {
myPlayer.muted(true);
} else {
myPlayer.muted(false);
}
}
请注意,您应使用!myPlayer.muted()作为if条件,而不是 myPlayer.muted(false)。。根据{{3}}文章,静音函数有两个重载:静音(布尔)和静音()。 静音(布尔)用于设置播放器的静音状态并返回播放器对象,因此原始脚本将首先将播放器设置为取消静音,然后将其设置为静音,并且永远不会进入else子句,这就是静音触发但是取消静音不起作用的原因。