使用jQuery启动HTML5视频

时间:2013-05-24 20:02:17

标签: jquery html5 html5-video

我想在里面播放一个视频,它位于#video-overlay旁边,代码是:

jQuery(".landing-container #video-overlay").hover(function(){
        this.prev().play();
    },function(){
        this.prev().pause();
    });

如果我更改了该功能,我使用的是"video"而不是#video-overlay,我删除了prev()一切正常......

什么是完美的解决方案?我想在#video-overlay悬停时启动视频。

1 个答案:

答案 0 :(得分:1)

DOM Element对象不支持.prev()方法,对于使用jQuery .prev()方法,该元素应该用jQuery包装:

$("#video-overlay").hover(function() {
   $(this).prev().get(0).play();
              // ^-- Get the first selected DOM Element object from jQuery Collection
              //     for calling `.play` method, assuming the returned element is
              //     a Video or Audio Element object
  }, function() {
     $(this).prev().get(0).pause();
});

使用DOM Element对象的previousElementSibling属性(不能在IE8及以下上工作):

$("#video-overlay").hover(function() {
     this.previousElementSibling.play();
  }, function(){
     this.previousElementSibling.pause();
});