iOS 上的 Safari 有一个策略,仅当当前 javascript 执行以用户操作(通常是单击事件)开始时才允许播放媒体。
但是,当我将处理程序附加到触发的按钮someYoutubePlayer.playVideo()并且用户单击此按钮时,这就是实际发生的情况:
click在主页面窗口中触发事件- 该方法在 youtube 上
playVideo触发postMessage<iframe /> - 在 iframe 内
message触发了一个事件 message事件的处理程序domVideo.play()将失败,因为当前事件不再是click,而是message,因为我们在内部iframe窗口中。
有谁知道如何克服这个问题并从外部点击事件触发播放?