在使用 jQuery 单击不相关的按钮后,如何防止特定动画运行

How would one prevent a specific animation from running after an unrelated button is clicked using jQuery?

本文关键字:何防止 运行 动画 按钮 jQuery 单击 不相关      更新时间:2023-09-26

我正在使用一个我偶然发现的优秀的轻量级jquery滑块,叫做Easyfader,可以在这里查看:http://codepen.io/anon/pen/rAzxI

滑块可以创造奇迹,但是我需要在滑块中添加视频组件。我成功地添加了带有"幻灯片"类的 iframe,但是即使用户在 youtube iframe 上按下了播放,滑块也会按预期继续移动到后续幻灯片。

理想情况下,我们希望滑块停止其默认定时动画,并且只允许在用户单击滑块导航箭头或菜单时进行幻灯片更改。

下面我尝试创建一个在点击 youtube 视频时触发的功能,问题是我无法成功暂停默认过渡动画。我试图一起杀死该功能,这也不理想,也没有工作。

请参考上面提供的链接,详细说明正在使用的代码,并查看下面我尝试但确实失败的地方。

function videoPlaying()
{
  $('#video-still').fadeOut(1000);
  var theURL = $('.embed-video').attr('src');
  $('.embed-video').attr('src', theURL + '?fs=1&feature=oembed&&autoplay=1');
  ('.slide').stop(true, true);
}

您可以通过清除计时器来稍微扩展插件以响应pause事件

$container.on('pause.easyFader', function(){clearTimeout(slideTimer);});

在插件中init方法中。

现在你可以打电话

$('#Fader').trigger('pause.easyFader');

从您想要暂停幻灯片的任何位置..一旦您单击任何下一个/上一个(或分页)按钮,它就会恢复。

http://codepen.io/gpetrioli/pen/jzfJq 演示