视频停止后我如何重定向到主页?

How can I redirect to home page after video stops

本文关键字:重定向 主页 视频      更新时间:2023-09-26

我正在使用Cincopa嵌入我的视频到我的网站。它所嵌入的页面被隐藏,导航被删除。所以我希望每个人在视频结束后都能被重定向到主页。

下面是我的代码:
<div id="cp_widget_55a42f1b-6e51-4738-87f9-eaf52dc6a826">...</div>
<script type="text/javascript">
    var cpo = [];
    cpo["_object"] = "cp_widget_55a42f1b-6e51-4738-87f9-eaf52dc6a826";
    cpo["_fid"] = "AsBAj2M3MQOr";
    var _cpmp = _cpmp || [];
    _cpmp.push(cpo);
    (function() {
        var cp = document.createElement("script");
        cp.type = "text/javascript";
        cp.async = true;
        cp.src = "//www.cincopa.com/media-platform/runtime/libasync.js";
        var c = document.getElementsByTagName("script")[0];
        c.parentNode.insertBefore(cp, c);
    })();
</script>
<noscript>Powered by Cincopa <a href='http://www.cincopa.com/video-hosting'>Video Hosting for Business</a> solution.<span>Test</span><span>bitrate</span><span> 39961 kb/s</span><span>height</span><span> 1080</span><span>duration</span><span> 00:02:35.31</span><span>lat</span>:<span> +33.2269</span><span>long</span>:<span> 21-96.93</span><span>fps</span><span> 59.94</span><span>width</span><span> 1920</span><span>originaldate</span><span> 2015-06-06 19:08:58</span>
</noscript>

Cincopa嵌入了一个视频HTML标签,你必须像这里解释的那样添加一个事件

嗯,现在我没有心情做一个完整的测试,所以我只建议一个你需要适应的变通方法。

为了给你确切的代码,我需要知道:

  1. 您使用的CMS是什么?
  2. 您可以添加一个id或类到您的视频标签与cincopa?
  3. 你包括jQuery吗?

然后你必须在你的脚本的底部添加这些行:

//Wait until the page is entirely loaded, and so you can access the rendered video tag (you'll need jQuery)
$( document ).ready(function() {
    
    function goHomeYouAreDrunk(e) {
        window.location.href = "http://url.to.your.home.page";
    }
    //I'm supposing that your video is the sole video tag in your page, if it's not, you'll have to get it by its id or class
    document.find('video').addEventListener('ended',goHomeYouArDrunk,false);
});

通常,这将通过<audio><video>元素上的事件侦听器实现。

如何添加事件监听器| W3Schools: https://www.w3schools.com/Jsref/met_element_addeventlistener.asp

但我用Javascript做的一种方法是:

// The interval clocks every .1 second(s).
setInterval(function() {
    // If the element's current playback time is the playback duration (has reached the end).
    if (audioElement.currentTime == audioElement.duration)
        doSomething()
}, 100)

如果您担心性能,并且不想使用setInterval()函数,那么请坚持向元素添加事件。

顺便说一下,要重定向到另一个页面,请使用Javascript函数location.assign("https://www.example.com.")

此代码已在https://www.cincopa.com/:

中进行了测试
document.getElementById("video_iframe_id_in_your_page")
    .contentWindow
    .document.getElementsByTagName("video")[0]
    .addEventListener("ended", function(args){
        window.open("/", "_top");
    });

您可以通过设置window.location="/"

重定向到主页

我不知道你是如何检查视频是否结束的,你可以添加一个这样的监听器。

完成后,可以调用处理函数将用户重定向到主页。

document.getElementById('myVideo').addEventListener('ended',redirectToHomePage,false);
redirectToHomePage(){
   window.location = "/";
}