关闭其内嵌弹出窗口,跨浏览器时如何停止html5视频

时间:2013-12-12 17:55:21

标签: javascript jquery html5

你好伙伴们,我在需要的时候来找你。我有一个包含html5视频的内联弹出窗口。我添加了一个停止('#video');到“关闭弹出”功能,这是有效的,但只有在Chrome和Opera,而不是在Firefox和EI,这导致我基于相同的代码的子问题,任何人都可以找到视频无法正确加载的原因歌剧和Safari。我不能为我的生活找出原因,我希望你们中的一个能够。

HTML:

<section id="video">
    <a href="#" class="topopup">
        <img src="images/play.png" alt="Play company video" title="Play company Video"/>
    </a>

    <div id="toPopup">
        <div class="close"></div>
        <div id="popup_content">
            <video width="100%" height="auto" controls>
                <source src="video/AM1.mp4" type="video/mp4">
                <source src="video/AM2.webm" type="video/webm">
                <source src="video/AM3.ogg" type="video/ogg">
                Video format not supported by your browser
            </video>
        </div>
    </div>
    </div>
    <div id="backgroundPopup"></div>
</section>

CSS:

#video {
    background: #ecf0f1;
    /*light gray*/
}

#video img {
    width: 36.11%;
    max-width: 252px;
}

#backgroundPopup {
    position: fixed;
    display:none;
    height:100%;
    width:100%;
    background:#000000;
    top:0px;
    left:0px;
}

#toPopup {
    background: none repeat scroll #000;
    margin-left:10%;
    margin-right:10%;
    height:auto;
    display: none;
    position: fixed;
    top: 10%;
    z-index: 1;
}

JavaScript的:

$(this).keyup(function (event) {
    if (event.which == 27) // 27 is 'Ecs' in the keyboard
    disablePopup(); // function close pop up
});

$(this).keyup(function (event) {
    if (event.which == 27) stop('#video');

});

$("div#backgroundPopup").click(function () {
    disablePopup(); //  close pop up

});

$("div#backgroundPopup").click(function () {
    stop('#video'); // stop video
});

2 个答案:

答案 0 :(得分:1)

呃,我有点疑惑你的stop功能在任何地方都有用 - 停止HTML5视频的方法是使用DOMNode.pause()。也许我误解了你的帖子?

答案 1 :(得分:0)

在视频代码中添加ID  

比你可以使用Javascript访问视频DOM对象

var videoControl = document.getElementById(“myVideoPlayer”); videoControl.pause();

相关问题