如何在UIWebView中暂停媒体播放
我目前正在研究支持iPad上多个标签的浏览器。 问题是iOS不允许多个标签同时播放audio/video,尝试这样会导致所有audio停止而不能返回的问题出现。
我注意到,谷歌浏览器的浏览器实际上停止在不活动的选项卡中的媒体。 我想知道他们是如何去做的。 我知道可以通过[webView loadRequest:NSURLRequestWithString(@"about:blank")];
完全停止媒体[webView loadRequest:NSURLRequestWithString(@"about:blank")];
声明,但这会导致页面显示一个空白屏幕。 我只想暂停媒体。
有一些JavaScript我可以执行,将停止UIWebView中的媒体? 如果是这样,它会是什么样子(我从来没有接触过JavaScript)?
提前致谢!
因为你可以做[webView stringByEvaluatingJavaScriptFromString:]
有她简单的方法。
例如,你可以这样做:
[webview stringByEvaluatingJavaScriptFromString: @"document.querySelector('video').pause();"]
当然,这只会阻止第一个video,所以在iPad上,脚本需要更复杂一点,并循环浏览页面上的所有video。
var videos = document.querySelectorAll("video"); for (var i = videos.length - 1; i >= 0; i--){ videos[i].pause(); };