Sönke Tesch: if-bedingter Seitenaufruf funzt net

Beitrag lesen

ich habe mit so nem script versucht, eine Abfrage zu machen, welche Seite gerade in frame [1] geladen ist.

<script type="text/javascript">
<!--
function Abfrage() {
  if(parent.frames[1].location.href ="Frage1.htm") {
   parent.frames[1].location.href ="5050Frage1.htm";

was muss ich aendern, dass es funktioniert. Denn wenn ich was anderes ausfuehren will, nur ein alert oder so, dann laedt er in dem fenster die Seite "Frage1.htm", obwohl er die ja nur ueberpruefen soll...

Ein einzelnes Gleichheitszeichen ist kein Vergleich, sondern eine Zuweisung. Du weist also in Deiner if-Abfrage location.href die Adresse "Frage1.htm" zu.
Im obigen Code merkst Du das nicht, weil location.href anschließend sofort auf "5050Frage1.htm" gesetzt wird. Wenn Du diese (zweite) Zuweisung durch ein alert() oder sonstiges ersetzt, bleibt "Frage1.htm" natürlich bestehen.

Möchtest Du nur einen Vergleich ausführen, benutze die Vergleichsoperatoren aus <selfhtml.teamone.de/javascript/sprache/operatoren.htm#vergleich>.

Gruß,
  soenk.e

PS: Die Dateinamen sollte man grundsätzlich klein schreiben. Unter Windows macht das zwar keinen Unterschied, aber da die meisten Server unter Unix laufen und Unix zwischen Groß- und Kleinschreibung unterscheidet, kann man sich mit gemischter Schreibweise nervige Stolperfallen einbauen.