我必须处理HTML页面中音频元素的行为。当用户到达页面时,音频开始播放。如果他在同一节课上再次到达页面,我不想再播放了。我试过那个代码,但它不起作用。你对此有什么建议吗?非常感谢
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<audio controls autoplay class="hidden-xs" style=" position:fixed; right:0; bottom:0; z-index:99999999999">
<source src="music_bbms.mp3" type="audio/mpeg">
Your browser does not support the audio element.
</audio>
<script>
$(document).ready(function() {
if (!localStorage.getItem('played') {
$('.music').attr('autoplay', false);
localStorage.setItem('played', true);
}
});
</script>
以下是我认为可能出错的地方:
- 音频元素上没有任何类
.music
,那么如何使用该类选择器更改其属性呢。我已经为音频元素添加了一个id,并使用该id进行选择 if
条件中缺少一个右括号,我已经修复了这个问题- 我假设,我们将项值作为字符串存储在sessionStorage中。sessionStorage已被使用,因为您说过要只跟踪当前会话
<audio id="music" controls class="hidden-xs" style=" position:fixed; right:0; bottom:0; z-index:99999999999">
<source src="music_bbms.mp3" type="audio/mpeg">
Your browser does not support the audio element.
</audio>
<script>
$(document).ready(function() {
if ( sessionStorage.getItem('played') != "true" ) {
$('#music').get(0).play();
sessionStorage.setItem('played', "true");
}
});
</script>