[前端] 音频/视频播放控制

音频:

IE9以下不支持audio标签元素

 

<audio id="audio" src="image/douxian.mp3" controls="controls" preload="auto" loop>
    Your browser does not support the audio tag.
</audio>

 

参数说明:

src:要播放的音频的 URL

controls:如果出现该属性,则向用户显示控件,比如播放按钮。

autoplay:如果出现该属性,则音频在就绪后马上播放。

loop:如果出现该属性,则每当音频结束时重新开始播放。

preload:如果出现该属性,则音频在页面加载时进行加载,并预备播放。如果使用 "autoplay",则忽略该属性。

可能的值:

auto - 当页面加载后载入整个音频

meta - 当页面加载后只载入元数据

none - 当页面加载后不载入音频

 

下面进行一些常用的方法控制

 

效果图(可以使用按钮和选择范围控制):

 

HTML布局:

 

<audio id="audio" src="image/douxian.mp3" controls="controls" preload="auto" loop>
    Your browser does not support the audio tag.
</audio>
<hr>
<div class="music"></div>
<hr/>
<button class="play" type="button">播放</button>
<button class="pause" type="button">暂停</button>
<button class="mute" type="button">静音</button>
<hr/>
音量:<input name="volume" type="range" min="1" max="10" value="5"> <span class="volume"></span>
<hr/>
进度:<input name="schedule" type="range" min="1" max="10" value="1"> <span class="schedule"></span>
<hr/>
<div class="ended"></div>
 

 

 

JS脚本操作

 

<script> 
    $(function() {
        var audio = document.getElementById('audio'); // 不支持$('#audio')

        /* 当前音乐 */
        $('.music').text('当前音乐:'+audio.src);

        /* 播放 */
        $('.play').click(function() {
            audio.volume = 0.5; // 设置竟是
            $('.volume').text(audio.volume);
            audio.play(); // 播放
        });  

        /* 暂停 */
        $('.pause').click(function() {
            audio.pause();
        });

        /* 静音 */
        $('.mute').click(function() {
            if(audio.muted) {
                $(this).text('静音');
                audio.muted = false;
            } else {
                $(this).text('取消静音');
                audio.muted = true;
            }
        });

        /* 设置音量 */
        $('[name="volume"]').change(function() {
            var volume = $(this).val() / 10;
            audio.volume = volume;
            $('.volume').text(volume);
        });

        /* 进度控制 */
        $('[name="schedule"]').change(function() {
            var audioLength = audio.duration;  // 获取当前音频的长度
            var unit = audioLength / parseInt($(this).attr('max')); // 每1格对应的实例秒数
            audio.currentTime = $(this).val() * unit;
            $('.schedule').text(audio.currentTime+'秒');
        });
    });
</script>

 

 

 

video视频的操作,同音频操作基本一样,由于时间原因,今天写不完了,但后面会接着讲。

 

欢迎关注技术开发分享录:http://fenxianglu.cn/

 

 

 

 

 

 

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天空还下着雪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值