2015-11-04 61 views
0

我想摆脱关闭弹出窗口后在后台播放的视频。现在,我有什么是这样的:从DOM中删除框架 - 有没有更好的方法?

jQuery(function(){ 
    jQuery('.slider-links .modalClick').on('click', function(event) { 
     event.preventDefault(); 
     jQuery('#overlay') 
      .fadeIn() 
      .find('#modal') 
      .fadeIn(); 
    }); 

    jQuery('#modal .close').on('click', function(event) { 
     event.preventDefault(); 
     jQuery('#overlay') 
      .fadeOut() 
      .find('#modal') 
      .remove(); 
    }); 
}); 

使用remove方法来摆脱保持在后台播放视频,但是,这不是我想要的东西,因为这种方式不允许再次点击链接,所以我的问题是;有没有更好,更干净的方法来做到这一点?感觉有点傻,问这个问题,但我现在不知道该在什么时候寻找答案。

+1

为什么你不停止视频 –

+0

因为我的观众可能不会做到这一点,并期望它在关闭弹出窗口后停止。 – magin

+0

我的意思是关闭弹出窗口,你可以停止视频 –

回答

0

我会停止视频和fadeOut#modal

jQuery('#modal .close').on('click', function(event) { 
    event.preventDefault(); 
    jQuery('#overlay') 
     .fadeOut() 
     .find('#modal') 
     .fadeOut(); 
    $('#overlay video')[0].pause(); 
}); 
+0

我不想手动停止它,你有一个想法,我怎么能点击/关闭做到这一点? – magin

+0

你可以添加HTML代码片段的问题? –

0

你可以做的是停止视频的模式接近像

jQuery(function ($) { 
    $('.slider-links .modalClick').on('click', function (event) { 
     event.preventDefault(); 
     $('#overlay') 
      .fadeIn() 
      .find('#modal') 
      .fadeIn(); 
     $('#overlay video')[0].play(); 
    }); 

    $('#modal .close').on('click', function (event) { 
     event.preventDefault(); 
     $('#overlay') 
      .fadeOut() 
      .find('#modal') 
      .fadeOut(); 
     $('#overlay video')[0].stop(); 
    }); 
}); 
+0

这看起来不错,我已经尝试过了,但在关闭后它仍然继续在后台播放 – magin

+0

@Simone浏览器控制台中是否有任何错误 –

相关问题