2015-06-19 7 views
6

Also im Netz habe ich mehrere Möglichkeiten zum Vorladen/Umleiten einer Webseite gefunden.Normale Umleitung oder Vorbelastung

Nun ist die Frage, ist dies der richtige Weg, eine Umleitung mit Vorspannung (Legen Sie die nächste Seite async, während immer noch die aktuelle Seite angezeigt) zu handhaben

$.get("page.php", function (data) { 
    document.open(); 
    document.write(data); 
    document.close(); 
    window.history.pushState("Title", "Title", "/page.php"); 
    $.cache = {}; 
}, "html"); 

Oder soll ich mit einer regelmäßigen Umleitung besser bleiben?

window.location = "page.php"; 

Die nächste Seite enthält ein Vollbild-Video und einen Soundtrack (Audio)

Dank.

+0

Sie können Ajax verwenden: https://en.wikipedia.org/wiki/Ajax_(programming) um die nächste Seite asynchron zu laden! – Behzad

+0

hilfreicher Link: http://www.w3schools.com/json/json_http.asp – Behzad

Antwort

4

Sie können Ajax verwenden, um nächste Seite asynchron zu laden. Hier ist ein Beispiel für eine einfache Ajax-Anfrage mit der GET-Methode, geschrieben in JavaScript.

AJAX steht für Asynchronous JavaScript and XML, und für das XMLHttpRequest-Objekt wie AJAX, der Asynchron-Parameter der Methode open() verhalten auf true gesetzt werden: xhr.open('get', 'send-ajax-data.php', true);

get-ajax -data.js:

// This is the client-side script. 

// Initialize the Ajax request. 
var xhr = new XMLHttpRequest(); 
xhr.open('get', 'send-ajax-data.php', true); // `true` makes the request asynchronous 

// Track the state changes of the request. 
xhr.onreadystatechange = function() { 
    var DONE = 4; // readyState 4 means the request is done. 
    var OK = 200; // status 200 is a successful return. 
    if (xhr.readyState === DONE) { 
     if (xhr.status === OK) { 
      alert(xhr.responseText); // 'This is the returned text.' 
     } else { 
      alert('Error: ' + xhr.status); // An error occurred during the request. 
     } 
    } 
}; 

// Send the request to send-ajax-data.php 
xhr.send(null); 

und am Ende können Sie unter Codes verwenden, um neu zu laden oder Seitendaten zu umleiten:

document.getElementById("myDiv").innerHTML = xhr.responseText; 
+1

Hier sind einige zusätzliche Browserkompatibilitätsinformationen, falls OP interessiert ist http://caniuse.com/#feat=xhr2 – zfrisch