我有一些视频缩略图可供选择,以便在悬停时触发播放/暂停。我设法让他们中的一个人工作,但我遇到了列表中其他人的问题。附加是我的代码的小提琴。将有一个div覆盖每个html5视频,所以悬停需要委托给视频,我不确定如何去做。悬停时的视频播放
这里的HTML预览 -
这里的JavaScript的<div class="video">
<div class="videoListCopy">
<a href="videodetail.html" class="buttonMore">
<div class="breaker"><div class="line"></div></div>
<div class="buttonContent">
<div class="linkArrowContainer">
<div class="iconArrowRight"></div>
<div class="iconArrowRightTwo"></div>
</div>
<span>Others</span>
</div>
</a>
</div>
<div class="videoSlate">
<video class="thevideo" loop>
<source src="http://www.w3schools.com/html/movie.ogg" type="video/ogg">
Your browser does not support the video tag.
</video>
</div>
</div>
<div class="video">
<div class="videoListCopy">
<a href="videodetail.html" class="buttonMore">
<div class="breaker"><div class="line"></div></div>
<div class="buttonContent">
<div class="linkArrowContainer">
<div class="iconArrowRight"></div>
<div class="iconArrowRightTwo"></div>
</div>
<span>Others</span>
</div>
</a>
</div>
<div class="videoSlate">
<video class="thevideo" loop>
<source src="http://www.w3schools.com/html/movie.ogg" type="video/ogg">
Your browser does not support the video tag.
</video>
</div>
</div>
预览 -
var figure = $(".video");
var vid = $("video");
[].forEach.call(figure, function (item) {
item.addEventListener('mouseover', hoverVideo, false);
item.addEventListener('mouseout', hideVideo, false);
});
function hoverVideo(e) {
$('.thevideo')[0].play();
}
function hideVideo(e) {
$('.thevideo')[0].pause();
}
非常感谢您的帮助。
奥利弗
非常感谢加比,这是完美的。 – 2014-11-06 12:30:13
@OliverChalmers,欢迎您。 (*还更新了答案,并删除了我留在那里的'console.log'命令,并使用变量vid而不是搜索每个悬停中的视频*) – 2014-11-06 12:31:25