我不知道很多javascript,但我想知道这是否可能:
我需要使视频不可见,并且当我按下其中一个链接时,嵌入的 youtube 会淡入(并开始播放)。然后当我 mouseOver 和 mouseOut 我希望它淡出然后能够在 mouseOver 上再次淡入,但我没有让它工作。我得到了不同的结果,其中 div 似乎消失了(当我将鼠标悬停在播放器过去什么都没有消失的地方时),现在我陷入了困境:
这是我在stackoverflow上四处寻找解决方案的过程:
这是一个 jsFiddle > http://jsfiddle.net/VKzxy/
还有我的 jQuery:
/* elt: Optionally, a HTMLIFrameElement. This frame's video will be played,
* if possible. Other videos will be paused*/
function playVideoAndPauseOthers(frame) {
$('iframe[src*="http://www.youtube.com/embed/"]').each(function(i) {
var func = this === frame ? 'playVideo' : 'pauseVideo';
this.contentWindow.postMessage('{"event":"command","func":"' + func + '","args":""}', '*');
});
}
$('#links a[href^="#vid"]').click(function() {
var frameId = /#vid(\d+)/.exec($(this).attr('href'));
if (frameId !== null) {
frameId = frameId[1]; // Get frameId
playVideoAndPauseOthers($('#playlist' + frameId + ' iframe')[0]);
$($('#playlist' + frameId + ' iframe')[0]).fadeIn(750);
//When hovering, fadeIn.
$('#content').mouseenter(function(){
$($('#playlist' + frameId)[0]).fadeIn(750);
});
//When leaving, fadeOut.
$($('#playlist' + frameId)[0]).mouseleave(function(){
$($('#playlist' + frameId)[0]).fadeOut(750);
});
}
});
编辑:它不必在 javascript 中,任何可行的解决方案都可以。