VideoJS:在模态关闭时停止视频而不在页面中嵌入

Cam*_*ron 8 javascript video jquery

我一直在使用JavaScript脚本VideoJS:http://videojs.com/ 来构建一些可以在弹出窗口中向用户显示的视频播放器.我已经构建了如下弹出窗口:

        <script type="text/javascript"> 

            VideoJS.setupAllWhenReady();

            jQuery(document).ready(function ()
            {
                // videos have video js applied to them
                //$("video").VideoJS()

                $(".show-video").click(function ()
                {
                    $(".video-background").show();
                    $(".video-container").fadeIn("fast");
                });
                $(".close-video").click(function ()
                {
                    $('.video-background').fadeOut();
                    $('.video-container').fadeOut();

                });
            });
        </script>

<a class="show-video">Show Video</a>

        <div class="video-background">
            <div class="video-container">

                <div class="video-js-box vim-css">
                    <video id="video1" class="video-js" poster="wallpaper.png" controls="controls" width="1024" height="768">
                        <source src="video.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' /> 
                        <object id="flash_fallback_1" class="vjs-flash-fallback" width="1024" height="768" type="application/x-shockwave-flash"
                            data="http://releases.flowplayer.org/swf/flowplayer-3.2.1.swf"> 
                            <param name="movie" value="http://releases.flowplayer.org/swf/flowplayer-3.2.1.swf" /> 
                            <param name="allowfullscreen" value="true" /> 
                            <param name="flashvars" value='config={"playlist":["poster.png", {"url": "video.mp4","autoPlay":false,"autoBuffering":true}]}' /> 
                          </object>
                    </video>
                </div>

                <a class="close-video">Close Video</a>

            </div>
        </div>
Run Code Online (Sandbox Code Playgroud)

我有两个问题:

1)如果视频正在播放且用户关闭视频弹出窗口,则视频仍将在后台播放...如何停止播放?

2)我在以下网站上注意到:http://www.apple.com/imac/features.html,通过使用主题标签和id显示内容以相同的方式弹出视频,但与我的示例不同,视频不是在页面中......有关他们如何做到这一点的任何想法?因为他们没有加载外部网页.很想看到一些如何用jQuery做这个的例子,因为我将有多个视频,所以根据链接上的标签将它们拉进来真是太好了!

谢谢

vin*_*nay 9

有两种方法可以做到这一点.

  1. 弹出窗口关闭时删除整个视频.使用$(video).remove()
  2. 使用videojs javascript方法

    VideoJS.DOMReady(function(){
      var myPlayer = VideoJS.setup("example_video_1");
      myPlayer.pause();  
    });
    
    Run Code Online (Sandbox Code Playgroud)

  • 您还可以在暂停前设置当前视频时间以模拟一种停止:myPlayer.currentTime(0); 如果你想做一个stopVideo.https://github.com/videojs/video.js/blob/stable/docs/api/vjs.Player.md#currenttime-seconds- (2认同)

小智 5

http://help.videojs.com/discussions/suggestions/9-play-and-pause-video-via-jquery

在“jquery.reveal.js”中放入您希望视频暂停的函数

$(".video-js")[0].player.pause();
Run Code Online (Sandbox Code Playgroud)