点击链接javascript停止所有播放iframevideo
我的网页上有一个iframevideo列表。
Stop all videos
我需要停止所有播放iframevideo点击链接Stop all videos
。 我怎样才能做到这一点?
试试这个,
这应该会停止在页面上所有iframe中播放的所有video:
$("iframe").each(function() { var src= $(this).attr('src'); $(this).attr('src',src); });
停止意味着暂停并将video设置为时间0:
$('iframe').contents().find('video').each(function () { this.currentTime = 0; this.pause(); });
这个jquery代码就是这样做的。
无需替换src属性并重新加载video。
我在项目中使用的function很少:
function pauseAllVideos() { $('iframe').contents().find('video').each(function () { this.pause(); }); $('video').each(function () { this.pause(); }); }
我编辑了上面的代码,以下内容对我有用…….
再次重新加载所有iframe以停止video
Stop all videos function stop(){ var iframe = document.getElementById('youriframe'); iframe.src = iframe.src; }
$("#close").click(function(){ $("#videoContainer")[0].pause(); });
您可以使用迭代修改此代码
/** * Stop an iframe or HTML5
所有者: https : //gist.github.com/cferdinandi/9044694也发布在这里(由我): 如何彻底销毁bootstrap模态窗口?
重新加载所有iframe只是为了阻止它们是一个糟糕的主意。 您应该获得HTML5附带的优势。
不使用YouTube的iframe_API库; 你可以简单地使用:
var stopAllYouTubeVideos = () => { var iframes = document.querySelectorAll('iframe'); Array.prototype.forEach.call(iframes, iframe => { iframe.contentWindow.postMessage(JSON.stringify({ event: 'command', func: 'stopVideo' }), '*'); }); } stopAllYouTubeVideos();
这将停止所有youtubes iframevideo。
您可以使用这些消息关键字来启动/停止/暂停youtube embddedvideo:
stopVideo playVideo pauseVideo
查看下面的链接了解现场演示:
https://codepen.io/mcakir/pen/JpQpwm