导航栏: 首页 评论列表

实时监测页面上的audio

默认分类 2025/03/19 14:05

场景:捕获实时创建audio元素播放音频的src,防止播放结束后audio标签随即会被移除,然后就找不到src了

window.mp3list = [];

setInterval(() => {
    const audioElements = document.querySelectorAll("audio");
    let newSrcList = [];

    audioElements.forEach(audio => {
        if (audio.src) {
            newSrcList.push(audio.src);
        } else {
            const sourceElements = audio.querySelectorAll("source");
            sourceElements.forEach(source => {
                if (source.src) {
                    newSrcList.push(source.src);
                }
            });
        }
    });

    newSrcList = [...new Set(newSrcList)]; // 去重

    const uniqueNewSrc = newSrcList.filter(src => !window.mp3list.includes(src));

    if (uniqueNewSrc.length > 0) {
        console.log("New audio sources found:", uniqueNewSrc);
        window.mp3list.push(...uniqueNewSrc);
    }
}, 50);


>> 留言评论