Mehrer frames: automatischposition onload scrollen

hduhsf

Grünschnabel
Hallo,
ich möchte eine einfache Seite erstellen um eine zusammenfassende Übersicht zu erhalten. Das Problem besteht darin die Position innehralb des frame onload automatisch zu navigieren (und am besten zu fixieren). Benötigt wird der bestimmte Ausschnit einer/mehrerer Seiten.

Vorhandener
HTML:
<html>
   <head>
   <script type='text/javascript'>
      function scrollWindow(){
          theFrame = document.getElementsByName("rdzeh");
          theFrama = document.getElementsByName("rdzh");
          theFramf = document.getElementsByName("rdkzeh");
          theFramvb = document.getElementsByName("rdzrh");

          theFrame.src="http://www.seit_a.net";
          theFrame.contentWindow.scrollTo(35,100);

          theFrama.src="http://www.seit_b.net";
          theFrama.contentWindow.scrollTo(35,100);

          theFramf.src="http://www.seit_c.net";
          theFramf.contentWindow.scrollTo(35,100);

          theFramvb.src="http://www.seit_d.net";
          theFramvb.contentWindow.scrollTo(35,100);
      }
   </script>
</head>

<body>
<IFRAME onload=scrollWindow() name="rdzh" vspace="0" hspace="0" allowtransparency="true" scrolling="yes" marginwidth="0" marginheight="0" frameborder="0" style="border:0px;" width="420" height="295" SRC=""http://www.seit_a.net""></IFRAME>

<IFRAME onload=scrollWindow() name="rdzeh" vspace="0" hspace="0" allowtransparency="true" scrolling="yes" marginwidth="0" marginheight="0" frameborder="0" style="border:0px;" width="420" height="295" SRC=""http://www.seit_b.net"></IFRAME>

<IFRAME onload=scrollWindow() name="rdkzeh" vspace="0" hspace="0" allowtransparency="true" scrolling="yes" marginwidth="0" marginheight="0" frameborder="0" style="border:0px;" width="420" height="295" SRC="http://www.seit_c.net""></IFRAME>

<IFRAME onload=scrollWindow() name="rdzrh" vspace="0" hspace="0" allowtransparency="true" scrolling="yes" marginwidth="0" marginheight="0" frameborder="0" style="border:0px;" width="420" height="295" SRC="http://www.seit_d.net"></IFRAME>
</body>
</html>

Leider machen die frames nicht was sie sollen... woran liegt´s?

Für eure Hilfe wäre ich dankbar.
 
Zuletzt bearbeitet:

tombe

Erfahrenes Mitglied
Ob es alleine daran liegt weiß ich nicht aber bei getElementsByName muss man doch noch den Index angeben, auch wenn der Name nur einmal vorkommt.

Siehe auch die Beschreibung bei SelfHTML.
 

hduhsf

Grünschnabel
Danke für die schnelle Antwort.

Habe einen Index hinzugefügt(von 0 bis 3): Bei [1] wird der frame als "Ticker", also durchgehend aktualisiert(soll aber nicht so sein); muss hierbei aber erwähnen, dass die Seite ohnehin alle 60 sek. aktualisiert werden soll und ich hierfür im head
HTML:
<meta http-equiv="refresh" content="60; URL=data.html" />
benutze.

Grade bemerkt, das dauernde Aktualisieren lag an einer verdrehten Variablen.

An den Positionen in den Frames ändert sich leider trotzdem nichts... Ich bitte um weitere Vorschläge. Wenn es eine andere Lösung gibt - her damit******:)
 
Zuletzt bearbeitet:

tombe

Erfahrenes Mitglied
Also ich habe jetzt mal die "Kooridinaten so geändert das ich es bei mir testen konnte und so wie es aussieht klappt es so dann auch:

Javascript:
function scrollWindow(){
	theFrame = document.getElementsByName("rdzh")[0];
    theFrama = document.getElementsByName("rdzeh")[0];
    theFramf = document.getElementsByName("rdkzeh")[0];

    theFrame.contentWindow.scrollTo(0, 600);

    theFrama.contentWindow.scrollTo(0, 900);

    theFramf.contentWindow.scrollTo(0, 2000);
}

Außerdem sind in dem HTML-Code den du oben gepostet hast jede Menge Fehler drin.
 

tombe

Erfahrenes Mitglied
So sieht mein (funktionierendes) Beispiel aus mit dem ich es probiert habe:

HTML:
<script language="javascript" type="text/javascript">
function scrollWindow(){
    f1 = document.getElementsByName("frame1")[0];
    f2 = document.getElementsByName("frame2")[0];
    f3 = document.getElementsByName("frame3")[0];

    f1.contentWindow.scrollTo(0, 600);
	f2.contentWindow.scrollTo(0, 900);
    f3.contentWindow.scrollTo(0, 2000);
}
</script>
<body>
<iframe name="frame1" onload="scrollWindow();" src="s1.html" width="300" height="300"></iframe>
<br />
<iframe name="frame2" onload="scrollWindow();" src="s2.html" width="300" height="300"></iframe>
<br />
<iframe name="frame3" onload="scrollWindow();" src="s3.html" width="300" height="300"></iframe>
</body>

Wobei hier in die Frames Dateien eingebunden werden die auf der gleichen Domain/im gleichen Verzeichnis liegen.
Willst du auf "fremde" Seiten zugreifen? Dann kann das eventuell der Grund sein.
 

hduhsf

Grünschnabel
Wobei hier in die Frames Dateien eingebunden werden die auf der gleichen Domain/im gleichen Verzeichnis liegen.
Willst du auf "fremde" Seiten zugreifen? Dann kann das eventuell der Grund sein.
Merkwürdiger weise funktioniert dein script bei mir nicht(und ich glaube dir dass es läuft, sieht gut aus), selbst wenn ich nur eine domain anwähle wird nirgends automatisch gescrollt. Bei IE und fgirefox dasselbe...

Dickes Danke für deine Mühe, brauch aber mehr Hilfe.
 

tombe

Erfahrenes Mitglied
Da du schreibst das du eine Domain angibst wirst du wohl auf externe Seiten zugreifen.

Da ist der Einsatz von Javascript aus Sicherheitsgründen nicht möglich! Habe bisher aber auch noch nichts gefunden wie es anders zu lösen wäre.
 

hduhsf

Grünschnabel
Also könnte es funktionieren wenn man die seiten erst lokal einliest und dann von der "internen" seite ausliest? Sozusagen frame im frame.
 
Zuletzt bearbeitet:

tombe

Erfahrenes Mitglied
Also wenn ich verstehen würde was du damit meinst, dann könnte ich es dir vielleicht sagen.

Andere Frage, was meinst du damit:

...(und am besten zu fixieren)...

Soll ein bestimmter Bereich der Seite angezeigt werden ohne die Möglichkeit nach oben oder unten zu scrollen?