给页面添加背景音乐(兼容Android与iOS)

  在我们做很多项目的时候,总会有需要给页面添加背景音乐的需求,在移动端呢,需要同时考虑到Android系统和iOS系统是否可以播放,以下代码音频播放代码可以完美的兼容Android和iOS系统,本人亲测有效。

html:

<div class="music-btn music-icon"></div>//设置音乐图标
		<audio id="bg-music" loop="loop" preload="auto" src="d003_Bit_Bit_Loop.mp3" style="display:none; height: 0;"></audio>//音乐播放

css:

/*音乐*/
.music-btn{
    width: 0.4rem;
    height: 0.4rem;
    position: fixed;
    top: 0.15rem;
    left: 0.15rem;
    background-size: 100% 100%;
    z-index: 1;
}
.music-icon{
    background-image: url("../img/play.png");
}
.pause{
    background-image: url("../img/pause.png");
}

js:

// 背景音乐
    // 点击音乐图标播放与暂停
    $('.music-btn').click(function () {
        bf();
    })
    function musicInWeixinHandler() {
        musicPlay(true);
        document.addEventListener("WeixinJSBridgeReady", function() {
            musicPlay(true);
        }, false);
        document.removeEventListener('DOMContentLoaded', musicInWeixinHandler);
    }
    document.addEventListener('DOMContentLoaded', musicInWeixinHandler);

    function musicPlay(isPlay) {
        var media = document.querySelector('#bg-music');
        if (isPlay && media.paused) {
            media.play();
        }
        if (!isPlay && !media.paused) {
            media.pause();
        }
    }

    function bf() {
        var audio = document.getElementById('bg-music');
        if (audio !== null) {
            if (audio.paused) {
                audio.play();
             $('.music-btn').addClass("music-icon");
             $('.music-btn').removeClass("pause");


            } else {
                audio.pause();
             $('.music-btn').removeClass("music-icon");
             $('.music-btn').addClass("pause");
            }
        }
    }

如有问题或者错误,欢迎留言,谢谢~

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在移动端Html中调用手机摄像头实时渲染在页面,可以使用HTML5中的`<video>`标签和WebRTC技术来实现。以下是实现步骤: 1. 在HTML文件中添加`<video>`标签,并设置`autoplay`和`playsinline`属性,这样可以自动播放和在页面播放视频。 ```html <video id="video" autoplay playsinline></video> ``` 2. 使用JavaScript获取用户的媒体设备(即摄像头和麦克风),并将其流(stream)传递给`<video>`标签。 ```javascript navigator.mediaDevices.getUserMedia({ video: true, audio: false }) .then(function(stream) { var video = document.getElementById('video'); video.srcObject = stream; video.play(); }) .catch(function(err) { console.log('Error: ' + err); }); ``` 3. 使用CSS样式来设置`<video>`标签的大小和位置,以便在页面中正确显示视频。 ```css #video { width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0; } ``` 4. 如果需要在视频上叠加其他元素,可以使用绝对定位来实现。例如,可以在视频上添加一个按钮。 ```html <button id="capture-btn">Capture</button> ``` ```css #capture-btn { position: absolute; bottom: 20px; left: 50%; transform: translateX(-50%); } ``` 5. 使用JavaScript来处理按钮点击事件,并在视频上叠加一个canvas元素,将视频渲染到canvas上。 ```javascript var canvas = document.createElement('canvas'); var ctx = canvas.getContext('2d'); var video = document.getElementById('video'); var captureBtn = document.getElementById('capture-btn'); captureBtn.addEventListener('click', function() { canvas.width = video.videoWidth; canvas.height = video.videoHeight; ctx.drawImage(video, 0, 0, canvas.width, canvas.height); // 将canvas转换为图片,可以发送给服务器或保存到本地 var image = canvas.toDataURL('image/png'); console.log(image); }); ``` 以上就是在移动端Html中调用手机摄像头实时渲染在页面的实现步骤,可以兼容AndroidiOS系统。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值