Javascript- ADDEventListener(“已结束”......)无效

时间:2015-01-02 00:58:21

标签: javascript

在网页上我有一个视频(标签,不是iframe),导航栏和显示的div设置:无。通过javascript,我试图让视频在它结束后消失(视频设置为autoplay =“true”),然后在它的位置显示div(我在开头提到的那个),以及更改导航栏中某些文本的颜色。它曾经工作(当我只删除视频,而不是其他东西),现在似乎我在事件监听器后无法运行的任何代码(我使用alert()测试代码的不同部分看它是否熄灭)。这是代码:

    var video=document.getElementById('bg');
    video.addEventListener("ended", afterVideo, false);

    function afterVideo() {
        var video=document.getElementById('bg');
        var gallery=document.getElementById('gallery');
        var galleryText=document.getElementById('galleryText');
        var gLink=document.getElementById('gLink');
        video.removeEventListener("ended", afterVideo, false);
        video.style.display='none';
        gallery.style.display='block';
        galleryText.style.display='block';
        gLink.style.color='#0c8acb';
        }

我的代码位于代码的顶部(但是在body标签之后),然而,我看到这样做是很多人的问题,所以我在底部尝试了它,但它没有工作意图(也不是以前)。事件监听器似乎很早就被触发(在视频结束之前)并且仍然没有显示隐藏的div,也没有删除视频(但是当测试它时,alert()每次都关闭)。

以下是相关的HTML:

<div class="fullVideo">
    <video id="bg" autoplay="true" muted="true">
        <source src="video/main6.mp4" type="video/mp4">
        <source src="video/main.ogg" type="video/ogg">
        Your browser does not support video.            
    </video>

    <video id="trans1" muted="true" > 
        <source src="video/trans1.mp4" type="video/mp4">
        <source src="video/trans1.ogg" type="video/ogg">
        Your browser does not support video.            
    </video>

    <div id="gallery">
        <div id="galleryText">
            <p>Text goes here!</p>
        </div>
    </div>
</div>

<nav style="top: 0px;">

    <div id="logo">
        <a href="index.html"></a>
    </div>

    <div id="verticalLine"></div>

    <div>
        <ul>
            <li><a href="#gallery" id="gLink">Gallery</a></li>
            <li><a href="#products" id="pLink">Products</a></li>
            <li class="br"></li>
            <li><a href="#contact.html">Contact</a></li>
            <li><a href="#about.html">About</a></li>
        </ul>
    </div>

    <div id="mNav">
        <br style="clear: left;">
        <p>
            <a href="#gallery">Gallery</a>
            <a href="#products">Products</a>
            <a href="#contact">Contact</a>
            <a href="#about">About</a>
        </p>
        <hr>
    </div>

</nav>

更新:似乎事件监听器在页面加载时被触发,按预期运行所有内容,但随后视频返回(我正在尝试删除的那个),使得它看起来像代码没有什么新东西...

0 个答案:

没有答案