我在页面上使用以下视频标记,这样当用户更改音量时,会记住以后的视频观看次数 -
<video class="video-js vjs-default-skin" controls preload="none" id="video1" data-setup="{}" onvolumechange="setVolume(this.volume,this.muted)">
setVolume调用一个函数来执行存储和检索音量级别。
如果我使用
data-setup="{}" onvolumechange="setVolume(this.volume)"
除非按下静音按钮,否则会记住音量。我可以省略 data-setup =“{}”,它将使用相同的
我遇到的问题是当我使用以下
时data-setup="{}" onvolumechange="setVolume(this.volume,this.muted)"
记住音量,但不记得静音,实际上在页面刷新后音量设置为100%。但如果我省略 data-setup =“{}”,则会记住静音并且工作正常。
很明显 data-setup =“{}”是导致此问题的原因。那么为什么要这样做呢,video.js中的内容是冲突的,我该如何解决呢?
答案 0 :(得分:0)
发现问题。我的脚本需要首先连接到video.js就绪函数,就像这样
videojs("video1").ready(function(){
var myPlayer = this;
getVolume(myPlayer);
});
然后在setVolume函数中你需要使用 myPlayer.muted(true); 而不是正常的html5视频API方式 myPlayer.muted = true;