【问题标题】:Reload page without affecting YouTube progress在不影响 YouTube 进度的情况下重新加载页面
【发布时间】:2016-10-20 23:32:26
【问题描述】:

我正在使用 PHP、HTML 和 JavaScript 制作一个半直播的互联网频道。

您可以在此处查看演示:http://mariocreative.host/chanelko/index.php

现在我有一个非常大的问题:(

我正在使用

if( (date('h:i:a') >= 12:00:00) && (date('h:i:a') < 12:00:01) ){
    $youtubevideoid='O__TkxSdkLk';
    $youtubevideostart='1';
}
if( (date('h:i:a') >= 12:00:00) && (date('h:i:a') < 12:00:02) ){
    $youtubevideoid='O__TkxSdkLk';
    $youtubevideostart='2';
}
if( (date('h:i:a') >= 12:00:00) && (date('h:i:a') < 12:00:03) ){
    $youtubevideoid='O__TkxSdkLk';
    $youtubevideostart='3';
}

现在从中午 12:00:00 到下午 12:01:40 开始播放此视频,但要继续使用上述方法,这将需要大约 2 小时! :/

另外,我正在使用以下代码通过 AJAX 方法刷新页面:

<script>
    $(document).ready(
            function() {
                setInterval(function() {
                    var randomnumber = Math.floor(Math.random() * 100);
                    $('#show').text(
                            ' '
                                    + randomnumber);
                }, 5000);
            });
</script>

每 5 秒刷新一次页面。

用于显示 YouTube 视频的代码是:

<iframe width="100%" height="900px" src="http://www.youtube.com/embed/<?php echo $youtubevideoid; ?>?&autoplay=1&rel=0&theme=light&start=<?php echo $youtubevideostart; ?>&showinfo=0&controls=0&hd=1&autohide=1&color=white" frameborder="0" allowfullscreen></iframe>

您能告诉我如何在不影响使用 JavaScript 播放 YouTube 进度的情况下刷新页面吗?

谢谢:)

【问题讨论】:

  • 不要刷新页面,使用 AJAX 用服务器需要的新数据重写 DOM。
  • @chris85 - 我必须刷新,因为超过 1 个视频将上传到此直播,而不仅仅是 1 个。
  • 对于第一个问题,您是否只尝试了一个&amp;&amp; (date('h:i:a') &lt; 12:01:40) 并计算$youtubevideostart 作为两个时间点(现在和12:00:00)之间的差异?
  • 有多少个 $youtubevideostart 号码? - 一天中的每一秒?
  • @YakovL - 我不能这样做,因为我们不能在 YouTube Embed 上这样做。

标签: javascript php jquery ajax youtube


【解决方案1】:

找到答案(这个答案是为面临同样问题的人发布的):

我要播放的视频是 1 分 40 秒。

首先,我会播放 1 分 25 秒以带来一些广告,然后我会播放剩下的视频。

代码如下:

if( (date('H:i:s') >= 12:00:00) && (date('H:i:s') < 12:01:25) ){
    $youtubevideoid='O__TkxSdkLk';
    $youtubevideostart='0';
    $youtubevideoend='85';
}

而 iframe 代码必须替换为:

<iframe width="100%" height="100%" src="http://www.youtube.com/embed/<?php echo $youtubevideoid; ?>?&autoplay=1&rel=0&theme=light&start=<?php echo $youtubevideostart; ?>&end=<?php echo $youtubevideoend; ?>&showinfo=0&controls=0&hd=1&autohide=1&color=white" frameborder="0" allowfullscreen></iframe>

编辑:如果我们从 1:40 开始使用 1:25,则只剩下 15 秒 - 所以我们将在广告结束后完成它们。

最后一个代码:

if( (date('H:i:s') >= 12:00:00) && (date('H:i:s') < 12:01:25) ){
    $youtubevideoid='O__TkxSdkLk';
    $youtubevideostart='0';
    $youtubevideoend='85';
}
//advertisement youtube video
if( (date('H:i:s') >= 12:01:25) && (date('H:i:s') < 12:01:40) ){
    $youtubevideoid='O__TkxSdkLk';
    $youtubevideostart='85';
    $youtubevideoend='100';
}

我的问题是:我不知道我们可以定义 YouTube 视频的结束。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多