url auslesen

TraphiX

Erfahrenes Mitglied
Hallo - ich habe hier mal eine kleine Anfängerfrage. Zumindest hoffe ich, dass es eine ist =)

Also ich habe hier ein Script das abhängig von der URL etwas anderes anzeigen soll.

Hab dafür 5 Container, die einzeln angezeigt/ausgeblendet werden (via buttons). Nun soll das ganze aber etwas dynamischer werden. Im besten Fall stell ich mir das so vor, dass das Script dieURL im Browser ausliest und nach einen bestimmten Ausdruck sucht. Demnach wird dann einer dieser 5 Container angezeigt.

also ungefähr so:
if "uvw" in der URL then var initialContainer = 0
if "xyz" in der URL then var initialContainer = 1 usw


Nun habe ich mich eigentlich noch überhaupt nicht mit Javascript beschäftigt - taste mich da gerade erst heran. Also entschuldigt, wenn die Frage nicht besonders eloquent gestellt ist ^^

Vielen Dank an alle, die sich darüber Gedanken machen

lg
 
Hi,

Zugriff auf den URL solltest du mit
Code:
window.location
erhalten (location-Objekt bei SelfHTML).

Zum Untersuchen könntest den String du zum Beispiel mit der Methode search auf eine enthaltene Zeichenkette prüfen.

Ciao
Quaese
 
Hi,

Code:
<button onclick="if(String(window.location).search(/xyz/) != -1) window.location='http://www.tutorials.de/';">mas</button>
Der Button leitet auf die Tutorials.de-Seite weiter, wenn der URL die Zeichenkette "xyz" enthält.

Ciao
Quaese
 
Das sieht doch schonmal ganz dufte aus =) vielen Dank schonmal für die Bemühungen :)

Aber so ganz das Richtige ist das noch nicht. Ich bräuchte praktisch eine Zeile, die beim "parsen" (wenn man das parsen nennen kann) überprüft, ob der Inhalt "xyz" oder "abc"in der URL enthalten ist und dann meinen Wert von "var initialContainer = 0;" auf "var initialContainer = 1;" oder "var initialContainer = 2;" usw. setzt.

Es gibt also 5 Fälle die überprüft werden müssen und je nach dem wird der wert zwischen 0-4 gesetzt.

Ich weiß dass das jetzt wohl einiger Geistiger Anstrengungen bedarf mir hier zu folgen ^^ aber ich würde mich sehr darüber freuen, wenn mir da jmd helfen kann.


beste Grüße und schon einmal vielen Dank für bisherige Überlegungen :)
 
Hi,

mit einer einzigen Zeile wird das wohl nichts werden.

Du könntest ein Array erstellen, bei dem der Suchausdruck dem Index entspricht, der später zugewiesen wird. Dieses Array wird in einer for-Schleife durchlaufen und der aktuelle Wert mit Hilfe eines regulären Ausdrucks auf Übereinstimmung mit dem URL geprüft.
Code:
<script type="text/javascript">
  <!--
var arrPattern = new Array("abc", "def", "ghi");

function checkURL(){
  for(var i=0; i<arrPattern.length; i++){
    if(String(window.location).search(new RegExp(arrPattern[i])) != -1){
      initialContainer = i;
      alert(initialContainer);
      break;
    }
  }
}
 //-->
</script>
Aufgerufen wird das Ganze zum Beispiel über einen Button.
Code:
<button onclick="checkURL();">checkURL</button>
Ciao
Quaese
 

Neue Beiträge

Zurück