h5教程html5中关于volume属性的使用详解

 所属分类:web前端开发

 浏览:122次-  评论: 0次-  更新时间:2022-10-27
描述:更多教程资料进入php教程获得。 Audio对象属性: volume 描述:设置或返回音频的音量,取值范围(0——1)下面是我做的音乐播放器如何调...
更多教程资料进入php教程获得。 Audio对象属性: volume 描述:设置或返回音频的音量,取值范围(0——1)

下面是我做的音乐播放器如何调节音频音量的代码:

//增加切换音量事件
(function(){
    var height = $("#myAudio ul.control li.volume .alert-box .volume-wrap .bar .scroll-bar").height();
    $("#myAudio ul.control li.volume .alert-box .volume-wrap .bar .scroll-bar .scroll-btn").on("mousedown",function(e){
        e.preventDefault();
        var downHeight = $("#myAudio ul.control li.volume .alert-box .volume-wrap .bar .scroll-bar").height();
        var downY = e.clientY;
        document.onmousemove = function(e){
            e.preventDefault();
            var moveY = e.clientY;
            var nowHeight = downY-moveY+downHeight;
            if(nowHeight<=0){
                nowHeight =0;
            }else if(nowHeight >= height){
                nowHeight = height;
            }
            $("#myAudio ul.control li.volume .alert-box .volume-wrap .bar .scroll-bar").height(nowHeight);
            var precent = nowHeight/height;
            audio.volume = precent;
        }
 
        document.onmouseup = function(){
            document.onmousemove = null;
            document.onmouseup = null;
        }
    });
})();
登录后复制

上面的主要思路:声明height变量先获取调节音量的滑动条的高度(设置的是80px),

给滑动条上的滑动块绑定mousedown事件,取消其默认事件e.preventDefault();

声明downHeight获取未滑动时的音量滑动条的高度, 声明downY获取点击位置距离窗口上方的y(垂直)方向距离var downY = e.clientY;

给整个dom添加mousemove事件,取消其默认事件e.preventDefault();

声明moveY获取光标移动到的位置距离窗口上方的y(垂直)方向距离var moveY = e.clientY;

声明nowHeight获取调节后音量滑动条的高度var nowHeight = downY-moveY+downHeight;

因为滑动条的高度为80px,所以在下面判断了一下

if(nowHeight <=0){
nowHeight=0;//最小值为0(对应volume静音)
}else if(nowHeight>=height){
nowHeight=height;//最大值为80px(对应volume最大值1)
}
登录后复制

将调节后的音量条高度赋值给滑动条,实现调节时滑动条同步变换高度;

由于音量vojume的取值范围(0-1),让nowHeight/height 得到调节后高度对总体高度的百分比,值为(0-1)

最后将这个值赋予audio.volume=nowHeight/height;

当调节结束后,松开鼠标添加mouseup事件,将mousemove和mouseup事件都清空

以上就是html5中关于volume属性的使用详解的详细内容,更多请关注zzsucai.com其它相关文章!

 标签: volume,html5,h5,
积分说明:注册即送10金币,每日签到可获得更多金币,成为VIP会员可免金币下载! 充值积分充值会员更多说明»

讨论这个素材(0)回答他人问题或分享使用心得奖励金币

〒_〒 居然一个评论都没有……

表情  文明上网,理性发言!