anderes Frameproblem

  • nAbend,

    ich nerv mal wieder :D

    Ich habe ein neues Problem und zwar will ich mit einem Link 2 Frames aktualisieren. Und meine Realisierung funktioniert mal wieder nur in Opera und nicht im InternetExplorer. Hier mal der Quellcode:

    <body bgcolor="#666666" text="#FFFFFF" link="#FFFFFF" vlink="#CCCCCC" alink="#FFFFFF">
    <p align="center"></p>
    <p align="center"><font color="#FFFFFF" size="4">News</font></p>
    <p align="center"><font color="#FFFFFF" size="4">Band</font></p>
    <p align="center"><font color="#FFFFFF" size="4">Musik</font></p>
    <p align="center"><font color="#FFFFFF" size="4">Fotos</font></p>
    <p align="center"><font color="#FFFFFF" size="4">G&auml;stebuch</font></p>
    <p align="center"><font color="#FFFFFF" size="4">Links</font></p>
    </body>


    und hier nochmal der Link:
    http://www.drinkwodka.de.ms/main.htm

  • Nerven tun hier die wenigsten. Meld Dich doch mal an, wenn du hier regelmäßig schreiben möchtest. Das wäre fein und erleichtert auch die Bearbeitung Deiner Fragen. Stammgäste haben Anspruch auf einen Mitgliedsnamen :)

    Wegen Deines Problems empfehle ich dir die Forumsuche, denn 2 Frames mit einem Link war schon oft Thema hier. Zum Beispiel erst vor Kurzem:
    https://www.forum-hilfe.de/viewtopic.php?t=5537

    Wir möchten hier gern helfen, wenn es nicht mehr weitergeht. Versuche Deine Lösung bitte mit den vorhandenen Beiträgen selbst zu finden,ok?

    Gruß
    webbie

  • So hab mich jetzt mal registriert und mir auch mal die anderen Beiträge angesehen und eine Methode probiert.

    Mein Hyperlink öffnet jetzt eine einzige html Datei in einem Frame und im Head dieser Datei habe ich jetzt folgendes geschrieben:

    <script type="text/javascript" language="JavaScript">
    top.rightframe1.location.href="rechts_band.htm";
    </script>

    und damit öffnet er mir auch in Opera die zusätzliche html Datei in einem anderen Frame, aber im Internet Explorer funktioniert es wieder nicht.
    Langsam bekomme ich einen Hass auf das Teil. :twisted:

    Hat jemand vielleicht noch einen Tipp oder eine Idee???

  • Hi,

    das Problem ist, daß dei Framset von einem weiteren (dir sicherlich gar nicht bekannten) Frameset umgeben ist.
    Das äußere Frameset wird von der Redirect-Domain erstellt, dein Frameset befindet sich sozusagen in der 2. Ebene - da kommt der IE-Explorer dann nicht mehr mit.

    Versuche es einmal mit 'parent' anstatt 'top', also ...

    Code
    <script type="text/javascript" language="JavaScript">
    parent.rightframe1.location.href="rechts_band.htm";
    </script>

    Gruß aus der Marsch!

    Ronald

  • Ronald: hat leider nicht funktioniert aber kann ich vielleicht das mit den Frames anders machen, damit das Problem erst gar nicht auftritt???

    <frameset rows="707*" cols="217*,630,196*" framespacing="0" frameborder="NO" border=0>
    <frame name="leftFrame" scrolling="NO" noresize
    marginwidth=0 marginheight=0 src="linker_rand.htm">
    <frameset rows="62*,570,69*" cols="*" framespacing="0" frameborder="NO" border=0>
    <frame name="topFrame" scrolling="NO" noresize
    marginwidth=0 marginheight=0 src="oben_rand.htm">
    <frameset rows="156,*" cols="*" framespacing="0" frameborder="NO" border="0">
    <frame src="logo.htm" name="topFrame1" scrolling="NO" noresize >
    <frameset rows="*" cols="138,*" framespacing="0" frameborder="NO" border="0">
    <frame src="links.htm" name="leftFrame1" scrolling="NO" noresize>
    <frameset rows="*" cols="*,132" framespacing="0" frameborder="NO" border="0">
    <frame name="main" scrolling="AUTO" noresize
    marginwidth=0 marginheight=0 src="news.htm">
    <frame src="rechts_news.htm" name="rightFrame1" scrolling="NO" noresize>
    </frameset>
    </frameset>
    </frameset>
    <frame name="bottomFrame" scrolling="NO" noresize
    marginwidth=0 marginheight=0 src="unten_rand.htm">
    </frameset>
    <frame name="rightFrame" scrolling="NO" noresize
    marginwidth=0 marginheight=0 src="rechter_rand.htm">
    </frameset>

  • Moin!

    Also falls die Frage noch aktuell ist:

    Dein Frameset ist etwas chaotisch, ich wundere mich, daß es überhaupt funktioniert.

    Etwas grundlegendes:
    - das Sternchen ist Jokerzeichen und bedeutet so viel wie 'alles was noch verfügbar ist' oder auch 'der Rest der Anzeigehöhe oder -breite'. Definierst du also ein Framest mit den Angaben cols="100,*,100" dann hast du drei Frames, links und rechts je 100 Pixel feste Breite, in der Mitte ein Frame mit variabeler Breite, eben so viel wie noch übrig ist. Von daher ist eine Angabe "rows="707*" cols="217*,630,196*" unlogisch, denn entweder soll es 707 (217/196) Pixel sein oder unbegrenzt - beides gleichzeitig geht nicht. Die Sternchen hinter den Zahlen solltest du also alle rausnehmen.

    - Framsets benutzen generell die gesamte Höhe oder Breite, Angaben wie rows="*" oder cols ="*" sind zwar nicht schädlich, aber absolut überflüssig, sie machen den Quelltext nur unübersichtlich.

    - man sollte darauf achten, daß keine Zeilenumbrüche in die einzelnen Framedefinitionen eingegeben werden, du solltetst deinen Queltext da noch einmal überarbeiten. Jeder Zeilenumbruch ist ein (unsichtbares) Zeichen, da können Browser durcheinander kommen.


    Zu Deinem Problem:
    Du verwendest insgesamt 10 Frames , 8 eigene und 2 kommen von der Redirect-Url. Ich würde das auf insgesamt 6 Frames reduzieren (bei gleicher Optik versteht sich):

    Gegen die 2 Frames vom Redirect kannst du nichts machen, wenn du die wahre URL verstecken willst, das ist so o.K. Allerding würde ich die index.html dahingehend abändern, daß sie eine Tabelle mit einem zentrierten Iframe enthält und in das I-Frame kommt dann ein kleines Frameset mit 4 Frames: top, links, mitte und rechts. Gib den Frames keine Namen, die jeder verwendet, dann kann es immer wieder passieren, daß Links nicht funktionieren. Nenn Sie z.B. "drink_top" oder "drink_links", dann sollte es auch mit den Verweisen klappen.

    Zu den Verweisen: unbedingt auf die richtige Schreibweise achten (Groß-/Kleinschrift), am Besten immer alle Datei- und Framenamen klein schreiben.

    G.a.d.M.

    Ronald