如何暂停媒体播放中的UIWebView(How to Pause Media Playback in

2019-09-20 03:12发布

我目前的工作,支持在iPad上的多标签浏览器。 问题的iOS不允许多个选项卡是在同一时间播放音频/视频,想这会导致问题,因为所有的声音停止,而不是回来出现这样的。

我注意到,谷歌Chrome浏览器的实际停止媒体在不激活的标签。 我想知道他们如何去了解它。 我知道这是可能通过彻底停止媒体[webView loadRequest:NSURLRequestWithString(@"about:blank")]; 声明但这会导致显示空白屏幕的页面。 我想只是暂停媒体。

有一些JavaScript我可以执行将停止在UIWebView的媒体? 如果是的话,那会是什么样子(我以前从未触及的JavaScript)?

提前致谢!

Answer 1:

既然你可以做[webView stringByEvaluatingJavaScriptFromString:]有是她的简单方法。

例如,你可以这样做:

[webview stringByEvaluatingJavaScriptFromString: @"document.querySelector('video').pause();"]

当然,这只会停止第一视频,所以在iPad上的脚本必须通过页面上的所有影片一点点更复杂和循环。

var videos = document.querySelectorAll("video");
for (var i = videos.length - 1; i >= 0; i--){
        videos[i].pause();
};


文章来源: How to Pause Media Playback in UIWebView