jQuery – FadeToggle – 如果元素可见或不可见,则执行不同的操作

我有一个按钮,当你点击那个按钮时,我正在做一个fadeToggle()来显示或隐藏一个弹出窗口。

该弹出窗口出现在自动播放的Flashvideo之上。

所以,我想要做的是, 当弹出窗口可见时,我想暂停video。 当它被隐藏时,播放video

我的video播放器已经支持这些function。 所以这很好用:

videoPlayer.pause(); videoPlayer.play() 

那么我的FadeToggle()看起来像什么? 现在我有这个代码:

  $("#categorySlider").fadeToggle('fast', function() { var videoPlayer = document.getElementById("videoContainer"); videoPlayer.pause(); }); 

我在这里缺少play()部分,但我无法弄清楚添加它的语法?! 如果fadeToggle不是正确的用法,任何jquery或javascript都没问题!

有什么帮助吗?

您可以使用jquery :visible选择器查看#categorySlider是否可见,并根据该暂停或播放video。

 $("#categorySlider").fadeToggle('fast', function() { var videoPlayer = document.getElementById("videoContainer"); if ($("#categorySlider").is(":visible")) videoPlayer.pause(); else videoPlayer.play(); });