javascript - 视频滑块停止的js代码
问题描述
我创建了一个视频滑块,也就是说,当我单击从 fontawesome.com 获取的一个圆圈时,我有两个视频在一个和另一个之间切换。当我单击底部 PLAY 开始播放视频时,当我切换到滑块的下一个视频时它不会停止。我想当我改变视频时,前一个停止。
我在下面展示了我到目前为止编写的 js 代码。如果你能帮助我知道我应该在这个代码中包含什么来停止我切换它的视频。
谢谢
$(document).ready(function(){
var videoItems = $('.slidervideo li').length;
// Pagination --
for(i= 1; i <= videoItems; i++){
$('.pagination-slider').append('<li><span class="fa fa-circle"></span>
</li>');
}
//------------------------
$('.slidervideo li').hide(); // Ocultanos todos los slides
$('.slidervideo li:first').show(); // Mostramos el primer slide
$('.pagination-slider li:first').css({'color': '#CD6E2E'});
//Ejecutamos todas las funciones
$('.pagination-slider li').click(paginationslider);
// FUNCIONES =========================================================
function paginationslider(){
var paginationsliderPos = $(this).index() + 1;
$('.slidervideo li').hide();
$('.slidervideo li:nth-child('+ paginationsliderPos +')').fadeIn();
$('.pagination-slider li').css({'color': '#858585'});
$(this).css({'color': '#CD6E2E'});
}
});
解决方案
你快到了……
让我们看看这个hide()
函数做了什么:
element.hide():在元素(jquery 元素)上调用 hide() 函数,通过向其添加
display: none
属性来隐藏 elmenet。
这个 CSS 属性无法暂停/播放视频。
因此,您还必须添加暂停视频的代码。
$('.slidervideo li:nth-child('+ paginationsliderPos +') video').pause()
* 我假设您在元素内部有一个视频.slidervideo li
元素。
而且您不需要 jQuery 元素来执行该.pause()
方法,因为它是一个 HTMLMediaElement 方法。
编辑:暂停加载在 iframe 中的 youtube 视频是一种不同的方法。
看看他们的 API 的 https://developers.google.com/youtube/iframe_api_reference
首先,您需要使用参数更新 iframe urlenablejsapi
<iframe id="existing-iframe-example"
width="640" height="360"
src="https://www.youtube.com/embed/M7lc1UVf-VE?enablejsapi=1"
frameborder="0"
style="border: solid 4px #37474F"
></iframe>
然后你可以调用stopVideo
暴露的方法。
player.stopVideo()
在您的情况下,它将被调用为:
$('.slidervideo li:nth-child('+ paginationsliderPos +') video').get(0).stopVideo();
推荐阅读
- javascript - 如何从对象中获取值
- html - CSS - 将样式放在嵌套在元素中的输入上?
- apache-spark - 如何取消使用广播连接广播的表?
- c - 是否有 gcc 选项来解决这个与位域相关的 C 问题?
- fpdf - 如何在 FPDF 的 ISO-8859-1 或 ISO-8859-15 中调用 iconv
- opencv - 如何用 4 个像素扩展特定的颜色斑点?
- kubernetes - Kubernetes Service 连接 TargetPort 而不是 NodePort
- boolean - 关于布尔值作为变量时的应用问题?(单词问题)
- android - 尝试在 Flutter 中使用多个模拟器进行编译时出现 Gradle 错误
- python - 模型性能的皮尔逊相关系数