播放后重定向html5视频

Posted

技术标签:

【中文标题】播放后重定向html5视频【英文标题】:Redirect html5 video after play 【发布时间】:2012-05-12 09:11:50 【问题描述】:

我有一个 html 5 视频,我删除了控制按钮并添加了一个 js 代码,以便用户在单击视频时播放视频。我需要做的是绑定一个额外的脚本,该脚本将在视频播放后重定向页面而无需重新加载页面。下面是我的js代码。

function play()
var video = document.getElementById('video');
video.addEventListener('click',function()
video.play();
,false);

这是我的 HTML5 视频代码

<video id="video"   onclick="play();">
<source src="video/Motion.mp4" type="video/mp4" />
</video>

【问题讨论】:

【参考方案1】:
<script type="text/javascript">
// Do not name the function "play()"
function playVideo()
    var video = document.getElementById('video');
    video.play();
    video.addEventListener('ended',function()
        window.location = 'http://www.google.com';
    );

</script>
<video controls id="video"   onclick="playVideo()">
    <source src="video/Motion.mp4" type="video/mp4" />
</video>

这里是您可以绑定的媒体事件列表:http://dev.w3.org/html5/spec/Overview.html#mediaevents

【讨论】:

感谢 AlienWebGuy。现在就试试。也感谢您的链接 对不起 AlienWebguy,它不起作用。视频结束后页面未重定向 我知道发生了什么,您的函数名为 play,但您的 onclick="play()" 正在播放视频而不是调用该函数。刚刚重命名了函数。 嗨外星人它现在可以工作了,我所做的是我将结束事件的脚本分开。非常感谢【参考方案2】:

我在另一个网站上找到了这个。它似乎运作良好......

    <script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js">
    </script>
    <script type="text/javascript">
      $(document).ready(function()   
       $("#myVideo").bind('ended', function()
          location.href="http://www.localhost.com";   
       ); 
      );
    </script>

    <video id="myVideo"   controls="controls">
      <source src="movie.mp4" type="video/mp4" />
      <source src="movie.ogg" type="video/ogg" />
        Your browser does not support the video tag.
    </video>

【讨论】:

【参考方案3】:

有没有办法修改它以使其适用于自动播放的视频?我认为 src="text/javascript" 而不是 type="text/javascript" 是什么让我很生气,然后我意识到我在多个浏览器中得到的结果不一致。尽我所能跟踪它,那些正确解释自动播放的人没有正确执行此代码,因为从技术上讲没有“点击”;视频只是自行进行,从不触发功能。

【讨论】:

【参考方案4】:
 <script>
      var vid = document.getElementById("myvideo");
      vid.onended = function() 
            window.open("index.html", "_self");
      ;
</script>
<video controls id="myvideo"  >
    <source src="video/Motion.mp4" type="video/mp4"/>
</video>

【讨论】:

【参考方案5】:

Ashley 的代码 sn-p 对我有用,但我必须确保不要在视频标签中使用“循环”参数,否则它不起作用。

另外,我可以让它自动播放,正如你在这个例子中看到的那样:

<video id="thevideo"  preload="auto" autoplay="autoplay"> 
  <source src="your-video.mp4" type="video/mp4" />
  <source src="your-video.ogv" type="video/ogg" />
  Your browser does not support the video tag.
</video>

【讨论】:

【参考方案6】:

如果您想避免在应用程序中对 URL 进行硬编码,并且只想重置视频而不一定要导航到另一个页面,我发现这非常简洁。

<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js" /> 
<script type="text/javascript">
            $(document).ready(function()   
                $("#yourVideoID").bind('ended', function()
                    location.reload(false);                     
                ); 
            );
</script>

您无需指定 URL,包含您的视频的当前页面会从缓存中重新加载(如果可能),因此您不必为了重新显示视频而再次与服务器通信。

【讨论】:

以上是关于播放后重定向html5视频的主要内容,如果未能解决你的问题,请参考以下文章

视频播放结束 10 秒后如何重定向到另一个页面?

Android 4 上的 html5 视频:播放全屏然后重定向到另一个网页 - 不工作

php 添加到购物车后添加到购物车重定向产品重定向自定义重定向后重定向

angular 5 - 登录后重定向上一页

在 React 中提交后重定向

用户登录后重定向到要访问页面