我正在为我的按钮使用onClick功能。我的按钮代码如下所示:
<a onClick="fadeNext('#myDIV1',500);">Button 1</a>
<a onClick="fadeNext('#myDIV2',500);">Button 2</a>
我的JS函数看起来像这样:
function fadeNext(selectedId, speed) {
var containerID = '#imageSwap';
var vis = ($(containerID + ' div:visible').length > 0) ? $(containerID + ' div:visible').eq(0) : $(containerID + ' div').eq(0);
var next = $(selectedId);
vis.fadeOut(speed);
next.fadeIn(speed);
}
这会正确地淡化内容并且效果很好,但视频内容(Vimeo)仍然在不可见时播放。试过这个JS,但仍然没有运气:
function fadeNext(selectedId, speed) {
var containerID = '#imageSwap';
var vis = ($(containerID + ' div:visible').length > 0) ? $(containerID + ' div:visible').eq(0) : $(containerID + ' div').eq(0);
var next = $(selectedId);
vis.fadeOut(speed, function() {
$(this).empty().show();
});
next.fadeIn(speed);
}
通过这个JS,内容不再淡出或清空。
我是一名JS新手,无法让empty()代码正常工作。主要原因是我的DIV将包含视频(Vimeo)。当用户点击更改内容时,我希望能够卸载视频,因此视频/声音不再播放。
任何帮助/建议将不胜感激!
答案 0 :(得分:0)
查看我的小提琴:http://jsfiddle.net/tutanramen/umJQ9/16/
我添加了指向外部资源的链接:https://raw.github.com/vimeo/player-api/master/javascript/froogaloop.js
然后我给每个iframe一个id(v1和v2,但它们没有在这个小提琴中使用)和一类播放器。
然后将其添加到fadeNext:
$(".player").each(function() {
$f($(this)[0]).api("pause");
});
现在,当您点击选择其他视频时,它实际上会暂停所有视频。