2016-08-15 3 views
1

Ich baue eine jQuery-basierte Web-App und möchte URL-Parameter verwenden, um sie zu navigieren.URL-Parameter bestimmen load() url

Ich möchte Inhalte basierend auf dem Parameter URL anzeigen, wobei die Funktion 'load()' den Hauptteil der Webseite von einer externen URL erhält und ein Element damit ersetzt.

Wie würde ich schaff' eine if-Anweisung, die folgenden Bedingungen verwenden ...

  • Wenn es keine Parameter in der URL, dann $("#toBeReplaced").load("home.txt");

  • verwenden Wenn der Parameter page gleich about, dann verwenden $("#toBeReplaced").load("about.txt");

  • Wenn der Parameter page-contact gleich ist, dannverwenden

... um festzustellen, welche Seite der App angezeigt werden soll.

+1

Es gibt viele Plugins/Bibliotheken da draußen, um die URL in js zu parsen. Greifen Sie einfach eine gewünschte Bibliothek und erstellen Sie eine einfache 'if'-Anweisung. 1 Minute Googeln und 5 Zeilen Code benötigt ...;) wie: https://github.com/websanova/js-url – eisbehr

+0

@eisbehr Ich bin ziemlich neu bei javascript und jQuery also würde ich mir recht gerne ein paar Beispiele ansehen Code könnte ich verwenden, damit ich es ein bisschen besser verstehen konnte. –

Antwort

0

Sie können einfach die URL mit page Variable laden, wenn es undefined ist dann Last home sonst laden, was in page variabel ist.

var page = location.search.substring(1).split('=')[1]; 
if (page == undefined) 
    $("#toBeReplaced").load("home.txt"); 
else 
    $("#toBeReplaced").load(page + ".txt"); 
+0

Wie würde ich die URL laden - Entschuldigung dafür, solche dummen Fragen zu stellen, aber ich bin neu in dieser Art von Sache, die so offen mit mir ist! –

+0

Wie sieht Ihre URL aus? – Mairaj

+0

zum Beispiel coding-kids.net/app?page=about –

0

Sie können verschiedene Bibliotheken oder jQuery-Plugins verwenden, um URL-Parameter in js zu erhalten. In diesem Beispiel verwende ich js-url. Fügen Sie die Datei url.min.js in Ihre Seite ein. Dann benutze das einfach, um den Parameter page von url("?page") zu erhalten und einen einfachen if zu erstellen.

$(function() {  
    var page = url("?page"); 

    if(page === "about") { 
     $("#toBeReplaced").load("about.txt"); 
    } 

    else if(page === "contact") { 
     $("#toBeReplaced").load("contact.txt"); 
    } 

    else { 
     $("#toBeReplaced").load("home.txt"); 
    } 
}); 
+0

Ich habe die Bibliothek als ZIP heruntergeladen, welche Datei lade ich auf den Server "Ist es" url.min.js "? –

+0

Ja, genau. Wie ich in meiner Antwort schrieb. @DanielHarrin – eisbehr