WKWebView视频暂停不工作的所有网站
WKWebView video pausing not working for all the websites
我正在加载一些包含一些视频的网站。我使用WKWebView来加载这些视频。我需要在加载页面时停止自动播放视频,所以我添加了以下java脚本代码来暂停视频。
NSString *script = @"var videos = document.querySelectorAll('"video'"); for (var i = videos.length - 1; i >= 0; i--) { videos[i].pause(); };";
[webView evaluateJavaScript:script completionHandler:^(id result, NSError *error) {
NSLog(@"Error : %@",error.localizedDescription);
NSLog(@"Java script result = %@",result);
}];
我可以在我列出的大多数网站上暂停视频,如CNN, Youtube等。但这对一些网站不起作用。例子:
TheGlobe&Mail - http://www.theglobeandmail.com/news/news-video/
BBC - http://www.bbc.com/news/video_and_audio
这个问题有什么解决办法吗?
在iOS 9.0中有一个属性WKWebView叫做requiresUserActionForMediaPlayback如果你把这个设置为true,那么你的自动播放应该被关闭
如果你使用
我还没有在你提到的网站上尝试这个。当我输入
我知道这个问题很久以前就被问过了,但既然没有答案,我将为其他正在寻找方法的人回答这个问题:
这是我的代码:
NSString *script = @"var videos = document.getElementsByTagName('"video'"); for (var i = 0; i < videos.length; i++) { videos.item(i).pause(); };";
[self.webView evaluateJavaScript:script completionHandler:^(id result, NSError *error) {
}];
Swift
webview.evaluateJavaScript("var videos = document.getElementsByTagName('"video'"); for (var i = 0; i < videos.length; i++) { videos.item(i).pause(); };")
基于https://stackoverflow.com/users/2640210/the-mach-system答案
相关文章:
- "此网站似乎使用滚动链接定位效果.这可能不能很好地与异步平移一起工作;
- 代理一个网站能够在iframe中进行所见即所得编辑-它是如何工作的
- 使用HTML和任何服务器端语言(PHP,.net,ruby)制作的网站是否可以在每个具有浏览器的设备上工作
- Toggle已停止在我的网站上工作
- 谷歌脚本-从网站论坛解析HTML-并将数据写入工作表
- 我可以'我似乎没有得到我的网站'移动导航开始工作
- JavaScript网站与工作实例
- 如何在node.js的帮助下使用网站在localhost上工作
- 如何使Asp.net网站同时在IE 11(非可比模式)和IE 8中工作
- 缓存以使我的网站离线是't工作
- jsFiddle工作,网站JS不工作
- 代码在 jsfiddle 中工作,但在我的网站上不起作用
- 我的jQuery在JSFiddle中工作,但不能在我的网站上工作!我做错了什么
- CSS 在基于 URL 上工作,但不在网站的其他页面中使用.代码点火器
- JavaScript不能在一个网站上工作,但在另一个网站上很好
- 如何让Jsfiddles在网站上工作
- 如何让旋转木马为drupal网站工作
- 带宽检查与视频网站(工作在手机和平板电脑)
- 如何DownForEveryoneOrJustMe.com和其他类似的网站工作与跨域脚本限制
- 网站工作,但不是在iphone上.XMLHttpRequest()错误