原因
html2canvas截屏时,暂停中的audio被重新播放;
是因为html2canvas在绘制图片时,会把页面所有dom浏览一遍,虽然绘制的dom不包括audio,但audio标签上有autoplay,所以即使已经手动关闭,仍然会让音乐再次播放。
代码
所以我们就可以用html2canvas自带的api阻止库的浏览行为。
下图源自html2canvas官网: html2canvas.hertzen.com/configurati…
所以我们只要给audio元素加上 data-html2canvas-ignore="true" 属性就大功告成了!
<audio
data-html2canvas-ignore="true"
src="XXXXXXX"
autoplay
loop
></audio>