2016-03-22 10 views
2

Ich möchte mehrere Videos hintereinander spielen. Ich möchte jedoch, dass die Seite jedes Mal aktualisiert wird, wenn ein Video beendet wird.Loop-Videos und aktualisieren nach jedem

Wie mache ich das?

Im Moment habe ich dies:

<script> 
    video_count =1; 
    videoPlayer = document.getElementById("homevideo"); 

    function run(){ 
      video_count++; 
      if (video_count == 6) video_count = 1; 
      var nextVideo = "Videos/demo/"+video_count+".mp4"; 
      videoPlayer.src = nextVideo; 
      videoPlayer.play(); 
     }; 
</script> 

Und

<video id="homevideo" width="100%" autoplay onended="run()"> 
    <source src="Videos/demo/1.mp4" type='video/mp4'/> 
</video> 

Jetzt wird diese Arbeit (Das nächste Video startet nach dem ersten fertig.) Allerdings weiß ich nicht, wie man bauen in der automatischen Aktualisierung. ohne erneut beim ersten Video zu starten.

EDIT:

Ist es posible mit php?

Das ist, was ich jetzt habe:

<?php 
$videos=array("Videos/treinen/1.mp4", 
    "Videos/Demo/1.mp4", 
    "Videos/Demo1/2.mp4", 
    "Videos/Demo/2.mp4", 
    "Videos/Demo1/3.mp4", 
    "Videos/Demo/3.mp4", 
    "Videos/Demo1/4.mp4", 
    "Videos/Demo/4.mp4", 
    "Videos/Demo1/5.mp4", 
    "Videos/Demo/5.mp4", 
    "Videos/Demo1/6.mp4"); 
echo $videos[0] . $videos[1] . $videos[2] . $videos[3] . $videos[4] . $videos[5] . $videos[6] . $videos[7] . $videos[8] . $videos[9]; 
?> 

Ist es posible

<div class="embed-responsive embed-responsive-16by9"> 
    <iframe class="embed-responsive-item" src="<?php echo $videos; ?>"></iframe> 
</div> 

Dies ist natürlich noch nicht funktioniert, aber ich hoffe, euch meine Idee. (Ich konnte es über eine Sitzung speichern. Und ich verwende einen iframe wegen Bootstrap).

+0

Verwenden Sie Cookies, um zu speichern, auf welchem ​​Video Sie sich befinden. – frosty

Antwort

0

Sie müssen irgendwo video_count speichern, weil nach der Aktualisierung video_count wird auch aktualisiert werden.

Sie haben einige Optionen:

  1. Shop in der Sitzung
  2. Shop in Cookie
  3. Shop in der Datenbank (Arbeit mit Ajax)

Session Beispiel:

Y ou kann es mit diesem Plugin ziemlich schnell machen: https://github.com/AlexChittock/JQuery-Session-Plugin

Set-Sitzung:

$.session.set("userName", $("#uname").val()); 

Get session:

$.session.get('userName'); 
+0

Nein, Mischen von PHP und Javascript-Variablen ist keine gute Idee.Beste Sache ist, mit Plätzchen zu gehen. – frosty

+0

Das Problem mit Cookies ist, dass Benutzer sie ändern können. Das ist nicht die beste Idee, wenn Sie Video-Anzeigen etc. anzeigen möchten. –

+0

Ist das nicht möglich mit PHP? Ich lege einfach alle Pfadrichtungen in ein Array. Ist es möglich, diese in einer Sitzung zu speichern, und das Array am Standort src wiederzugeben? Ich werde es auf Hauptantwort bearbeiten – Mitch

0

Es gibt dort viele Lösungen für dieses Problem. Wenn Sie bei Ihrer Umleitungslösung bleiben möchten, können Sie Webspeicher oder Cookies verwenden.

function run(){ 
    if(typeof(Storage) !== "undefined") { 
     var video_count = localStorage.getItem("video_count"); 
     if (video_count === null) { 
      video_count = 1; 
     } 
     //play video 
     video_count++; 
     //set new video count 
     localStorage.setItem("video_count", video_count); 
     //redirect 
    } 
}; 

Eine viel bessere Lösung wäre Ajax wird mit einem neuen json mit Daten zurücküberhaupt aktualisieren Inhalte auf Ihrer Seite und nicht verwenden umleitet.

function run(){ 
    //play next video without refreshing 
    $.ajax({ 
     url: "data.php", 
     success: function(response){ 
      //refresh data on page 
      $('#content').html(response); 
     } 
    }) 
}; 
Verwandte Themen