在H5页面中播放音频时,如果此时左右翻页,或者返回上级时,需要暂停或者停止播放音/视频的播放。
情况一:H5中已经有现成的停止播放的方法,比如“stopPlayAudio()”,那我们在webView中只需要直接调用这个方法就可以。
[self.webView evaluateJavaScript:@"stopPlayAudio()" completionHandler:^(id _Nullable response, NSError * _Nullable error) {
}];
情况二:H5使用的播放器播放,比如前端代码如下:
image.png
图中红圈的audio就是H5的播放器的类名
在webView 中直接调用需要这样写:
[self.webView evaluateJavaScript:@"var audios = document.getElementsByTagName('audio');\
for (var i=0;i < audios.length;i++){\
audios[i].pause();\
}" completionHandler:^(id _Nullable response, NSError * _Nullable error) {
}];
注意这句getElementsByTagName('audio') ,这个audio就是H5的播放器类名,这个需要跟前端的同事沟通确认。这里用的是“audio”,如果你的不一样,根据实际的改变就好。