启动嵌入式 Dailymotion 视频时暂停滑块
Pause slider when embedded Dailymotion video is started
我有一个滑块 (flexslider),每张幻灯片中都有一个 daylimotion 视频。滑块自动运行,视频不会。到目前为止,视频都是作为 iFrame 嵌入的,但如果需要,我可以将它们切换到 Web SDK API。
滑块可以通过以下方式暂停:
$('.flexslider').flexslider("pause");
如何创建一个监听器,在任何嵌入式视频启动时立即停止滑块?
根据 Dailymotion SDK docs,您可以在播放器上监听 start
事件,并在播放器启动时执行某些操作,例如从 运行 停止轮播。
下面是一个停止滑块的视频示例。
const player = DM.player(document.getElementById('player'), {
video: 'xwr14q',
width: '100%',
height: '100%',
params: {
autoplay: true,
mute: true
}
});
player.addEventListener('start', function() {
$('.flexslider').flexslider("pause");
});
仅使用 iframe 是不可能的,因为您无法与播放器进行通信。
不需要为每个视频添加额外JavaScript的解决方案:
HTML:
<script src="https://api.dmcdn.net/all.js"></script>
<div class="flexslider">
<ul class="slides">
<li><div class="dmplayer" data-video="x7tgad0"></div></li>
<li><div class="dmplayer" data-video="x7tgad0"></div></li>
<li><div class="dmplayer" data-video="x7tgad0"></div></li>
</ul>
</div>
jQuery:
$(window).on('load', function(){
$(".dmplayer").each(function(index, element){
var $this = $(this);
var video = $(this).data('video');
var player = new DM.player(this,{
video: video,
width: "100%",
height: "100%",
});
player.addEventListener('start', function() {
$('.flexslider').flexslider("pause");
});
});
});
我有一个滑块 (flexslider),每张幻灯片中都有一个 daylimotion 视频。滑块自动运行,视频不会。到目前为止,视频都是作为 iFrame 嵌入的,但如果需要,我可以将它们切换到 Web SDK API。
滑块可以通过以下方式暂停:
$('.flexslider').flexslider("pause");
如何创建一个监听器,在任何嵌入式视频启动时立即停止滑块?
根据 Dailymotion SDK docs,您可以在播放器上监听 start
事件,并在播放器启动时执行某些操作,例如从 运行 停止轮播。
下面是一个停止滑块的视频示例。
const player = DM.player(document.getElementById('player'), {
video: 'xwr14q',
width: '100%',
height: '100%',
params: {
autoplay: true,
mute: true
}
});
player.addEventListener('start', function() {
$('.flexslider').flexslider("pause");
});
仅使用 iframe 是不可能的,因为您无法与播放器进行通信。
不需要为每个视频添加额外JavaScript的解决方案:
HTML:
<script src="https://api.dmcdn.net/all.js"></script>
<div class="flexslider">
<ul class="slides">
<li><div class="dmplayer" data-video="x7tgad0"></div></li>
<li><div class="dmplayer" data-video="x7tgad0"></div></li>
<li><div class="dmplayer" data-video="x7tgad0"></div></li>
</ul>
</div>
jQuery:
$(window).on('load', function(){
$(".dmplayer").each(function(index, element){
var $this = $(this);
var video = $(this).data('video');
var player = new DM.player(this,{
video: video,
width: "100%",
height: "100%",
});
player.addEventListener('start', function() {
$('.flexslider').flexslider("pause");
});
});
});