B-Ball: Fenster in bestimmter Größe öffnen

Hallo Leute,
Ersteinmal muss ich sagen, dass ihr hier ein echt cooles Forum habt.....und so viele die helfen können. Find ich echt cool.
Also, ich verstehe schon viel von HTML und ein bisschen etwas drüber hinaus, aber jetzt komm ich nicht weiter.

Auf einer meiner Pages möchte ich, dass nach einem Klick auf diesen Link sich ein Fenster öffnet. (Breite: 500 Pixel ; Höhe: 550 Pixel)
Diese HTML Website , wohin der Link gehen soll, heißt wie ihr da unten sehen könnt "nabtrackstrack01.htm". Ich hab es schon geschafft, dass sich das neu öffnende Fenster überhaupt öffnet, mit " target="_blank" ", aber dass sich das Fenster jetzt noch in einer bestimmten größe öffnet, dass hab ich bisher nicht geschafft. Was müsste ich den zu diesem Code da unten hinzufügen damit sich das nächste Fenster in einer bestimmten Größe öffnet?

<h3 align="center"><a href="nabtrackstrack01.htm"target="_blank">Track 01</a></h3>

Danke schon Mal im voraus.....

B-Ball

  1. Das geht nur mit JavaScript. Nachteil: Bei ausgeschaltetem Scripting läuft es nicht mehr. Also vorher Einsatz gut überlegen oder alternativen Link ohne JavaScript anbieten.

    <script><!--
    function opening(url,targetname,width,height,corner,fullscreen){
    var left=(screen.width-width)/2,top=(screen.height-height)/2
    if(corner){left=screen.width-width-12;top=0;}//IE:resizable=yes:12,=no:10
    fullscreen=fullscreen?"yes":"no" // nur IE
    newWindow=window.open(url,targetname,"scrollbars=yes,resizable=yes,menubar=no,toolbar=no,location=no,directories=no,status=no,fullscreen="+fullscreen+",left="+left+",top="+top+",width="+width+",height="+height);
    }
    //--></script>

    <h3 align="center"><a href="javascript:opening('nabtrackstrack01.htm','_blank',500,550)>Track 01</a></h3>

    Ggf. die Optionen yes/no ändern.
    scrollbars und resizable sollten immer auf yes stehen, denn der Anwender kann die Standard-Schriftgröße im Browsermenü variieren.

    corner setzt das Fenster in die obere rechte Ecke (wenn als Parameter 1 angegeben).

    fullscreen geht nur mit IE (als Parameter corner 0 und fullscreen 1 angeben).

    Wenn die Scrollbars stören, muß das aufgerufene Dokument
    <body style="overflow:auto">
    enthalten, oder in der verwendeten css-Datei
    body{overflow:auto;} enthalten sein.

    1. Hallo Frank,

      <script>

      kannst Du bitte darauf verzichten, hier Scripte zu posten, mit denen
      ein Anfänger ganz bestimmt überfordert sein wird? Mir ist bis jetzt
      noch nicht klar, wozu diesen Riesenscript gut sein soll.
      Ein Link zu der richtigen Stelle in SELFHTML ist da sinnvoller:
      http://de.selfhtml.org/navigation/faq.htm#verweise_in_neuem_fenster

      Viele Grüße,
      Stefan

      1. kannst Du bitte darauf verzichten, hier Scripte zu posten, mit denen
        ein Anfänger ganz bestimmt überfordert sein wird?

        Niemals, denn die Beiträge interessieren auch viele Nicht-Anfänger.
        Hier sind viele Sachen zusammengefaßt, nach denen man sonst lange suchen muß, und SelfHTML enttäuscht in dieser Frage total.

        Man braucht das Script ja auch nicht zu verstehen, es gibt ja Copy-and-Paste!!!

        Mir ist bis jetzt
        noch nicht klar, wozu diesen Riesenscript gut sein soll.

        Es ist ein Universal-Script, um Fenster zu öffnen:

        • zentriert
        • oder in der Ecke oben rechts
        • oder fullscreen (nur IE)

        Wer will, kann ja den Funktionsnamen in "fenster" umbenennen, dann ist es einleuchtender.

        Nebenbei: dieses "Riesenscript" ist winzig: 5 Befehle.
        Nur wenn man so spät noch surft wie Du (und ich leider manchmal auch), ist einem vieleicht alles etwas zuviel. Etwas Schlaf täte Dir vieleicht ganz gut... ;-) (nicht überlesen: zwinker-zwinker)


        Um das Script auch unter abgeschaltetem JavaScript zum Öffnen eines Fensters zu bewegen, hilft folgende Syntax:

        <a href="url" onclick="open("url","targetname","optionen");return false">Fenster öffnen</a>

        Dabei wird die URL an 2 Stellen gleichzeitig angegeben (wichtig bei Änderungen), unter JavaScript wird der normale Hyperlink durch "return false" deaktiviert, stattdessen wird das Script ausgeführt.

        Im konkreten Fall wäre der Link dann so:
        <h3 align="center"><a href="nabtrackstrack01.htm" target="_blank" onclick="opening('nabtrackstrack01.htm','_blank',500,550);return false">Track 01</a></h3>

        Ist jetzt nicht ausgetestet, ggf. wieder melden.

        Wobei man statt '_blank' vieleicht besser einen bezeichnenden Namen (ohne Leerzeichen) angeben sollte, dann kann man später unter verwendungs dieses Namensbezeichners immer wieder auf das Fenster zugreifen (z. B. auch so: <a ... target="Fenstername">...</a>).

        (Im Link meines vorherigen Postings fehlte übrigens ein Anführungszeichen vor >).

        1. Hallo Frank, <- </faq/#Q-05a>

          kannst Du bitte darauf verzichten, hier Scripte zu posten, mit denen
          ein Anfänger ganz bestimmt überfordert sein wird?

          Niemals, denn die Beiträge interessieren auch viele Nicht-Anfänger.

          wenn Du Dir </?m=11301&t=1984> mal genau anschaust, dann siehst Du,
          dass B-Ball offenbar nicht Java und JavaScript unterscheiden kan
          und er überhaupt keine Idee hat, wie er nun dieses neue Fenster
          öffnet.
          Es nützt niemand (!) etwas, wenn Du einem Anfänger eine Frage in
          einer Art und Weise beantwortest, die er nicht versteht. Ein Profi
          wird zweifellos so ein Problem allein lösen können.
          Die SELFHTML-Lösung wäre sehr viel kürzer und auch B-Ball kann
          sie sicher verstehen, nicht zuletzt da sie dem typischen SELFHTML-
          Stil entspricht.

          Hier sind viele Sachen zusammengefaßt, nach denen man sonst lange suchen muß, und SelfHTML enttäuscht in dieser Frage total.

          Schreibe bitte selbst ein Dokumentation und veröffentliche diese
          woanders, hier ist der falsche Ort für den Versuch, uns von den
          Fehlern in SELFHTML überzeugen zu wollen. Stefan hat diese Doku
          geschrieben und wir sind damit sehr zufrieden, fertig.

          Man braucht das Script ja auch nicht zu verstehen, es gibt ja Copy-and-Paste!!!

          Vielleicht hast Du es noch nicht verstanden, der Sinn von SELFHTML
          ist nicht das Liefern fertiger Scripte, auch wenn es hier im Forum
          ab und an geschieht, der Sinn von SELFHTML heißt "Energie des Ver-
          stehens".

          Mir ist bis jetzt
          noch nicht klar, wozu diesen Riesenscript gut sein soll.

          Es ist ein Universal-Script, um Fenster zu öffnen:

          Danke, diese Erklärung wäre nicht notwendig gewesen. Ich bin durch-
          aus in der Lage, ein Script zum Öffnen eines neuen Fensters allein
          zu schreiben und auch Dein Script durchzuarbeiten. Allerdings habe
          ich zu letzterem keine Lust, da es eben viel zu umfangreich ist,
          die Problemstellung von B-Ball kann man mit einer Zeile lösen.

          • zentriert

          wollte niemand wissen.

          • oder in der Ecke oben rechts

          wollte niemand wissen.

          • oder fullscreen (nur IE)

          wollte niemand wissen.

          Nur wenn man so spät noch surft wie Du (und ich leider manchmal auch), ist einem vieleicht alles etwas zuviel. Etwas Schlaf täte Dir vieleicht ganz gut... ;-) (nicht überlesen: zwinker-zwinker)

          Du siehst, dass sich meine Meinung gegenüber </?m=11312&t=1984> nach
          acht Stunden Schlaf nicht wesentlich geändert hat.

          sonstiges

          Diese Erklärungen am Ende Deines zweiten Postings scheinen recht
          sinnvoll, die nützen einem Anfänger sicher mehr als so ein "tolles"
          Riesenscipt nach dem Motto "Man braucht das Script ja auch nicht zu
          verstehen"

          (Im Link meines vorherigen Postings fehlte übrigens ein Anführungszeichen vor >).

          Was natürlich ziemlich dumm ist, wenn man das Script nicht ver-
          standen hat.

          Also bitte überlege Dir mal, ob es nicht auch etwas anders geht,
          Deine Scripte kannst Du ja woanders "verkaufen", danke.

          Viele Grüße,
          Stefan

        2. Hallo Frank

          kannst Du bitte darauf verzichten, hier Scripte zu posten, mit denen
          ein Anfänger ganz bestimmt überfordert sein wird?

          Niemals, denn die Beiträge interessieren auch viele Nicht-Anfänger.

          richtig, aber du scheinst das Anliegen von SELFHTML überhaupt nicht zu verstehen. Das Projekt heißt SELFHTML und nicht GETHTML.
          Ich hoffe du verstehst den Unterschied.

          Hier sind viele Sachen zusammengefaßt, nach denen man sonst lange suchen muß, und SelfHTML enttäuscht in dieser Frage total.

          SELFHTML hat nicht die Aufgabe, fertige Lösungen zu liefern.

          Man braucht das Script ja auch nicht zu verstehen, es gibt ja Copy-and-Paste!!!

          Man oh man, du kapierst es wirklich nicht. Die Copypastr-Gesellschaft ist eh schon groß genug. Wer immer nur kopiert entwickelt sich nicht weiter. Wer jemanden das Kopieren als die Lösung anbietet ohne gleichzeitig Wissensvermittlung zu betreiben, ist geizig ohne Ende, denn er teilt sein Wissen nicht.
          Seine Copypaste-Lösungen dienen in meinen Augen nur dem Zweck, dafür Ruhm und Ehre einzuheimsen.

          Mir ist bis jetzt
          noch nicht klar, wozu diesen Riesenscript gut sein soll.

          Es ist ein Universal-Script, um Fenster zu öffnen:

          • zentriert
          • oder in der Ecke oben rechts
          • oder fullscreen (nur IE)

          Wer will, kann ja den Funktionsnamen in "fenster" umbenennen, dann ist es einleuchtender.

          Nebenbei: dieses "Riesenscript" ist winzig: 5 Befehle.

          halten wir mal fest, was da für Kenntnisse nötig sind:

          function opening(url,targetname,width,height,corner,fullscreen){

          Begriff Funktion, Begriff Parameter, Kenntnisse der Bedeutung dieser Parameter

          var left=(screen.width-width)/2,top=(screen.height-height)/2

          lokale Variablen deklarieren
          Variablen Werte zuweisen
          Screenobjekt (hier fehlt übrigens die Abfrage nach dem Vorhandensein)
          Screeneigenschaften width, height
          Operatoren - und /

          if(corner){left=screen.width-width-12;top=0;}//IE:resizable=yes:12,=no:10

          Vorhandensein einer Variable ermitteln
          rausfinden, wozu die Zeile gut ist
          Kommentare in JavaScript

          fullscreen=fullscreen?"yes":"no" // nur IE

          Wissen was ein fullscreen ist
          Conditional operator

          newWindow=window.open(url,targetname,"scrollbars=yes,resizable=yes,menubar=no,toolbar=no,location=no,directories=no,status=no,fullscreen="+fullscreen+",left="+left+",top="+top+",width="+width+",height="+height);

          Methode window.open
          Stringaddition

          eine ganze Menge an Kenntnissen die da erforderlich sind. Bist du auch in der Lage all dies dem Anfaenger zu erläutern?

          Denn erst mit der Erläuterung wird dein Script sinnvoll. So ist es nichts weiter als eine hingerotze Antwort, die niemanden nutzt.
          Denn
          a) ist sie an der Frage vorbeigegangen
          b) wegen der fehlenden Erläuterung von der Suche her kaum zu erfassen und damit im Archiv mehr oder weniger begraben

          Dieses Posting richtet sich nicht nur an dich allein. Leider neigen viel zu viele dazu irgendwelche Scripte/Lösungen zu posten, ohne sich die Zeit für Erläuterungen zu nehmen.

          Um aber eine Sprache - egal welche - zu verstehen und richtig anwenden zu können, ist gerade das notwendig.

          Viele Grüße

          Antje

          1. SELFHTML hat nicht die Aufgabe, fertige Lösungen zu liefern.

            SelfHTML hat den Anspruch, nicht nur die Theorie zu vermitteln, sondern auch praktische Beispiele zu geben.

            Die Theorie zu window.open() ist sehr ausführlich dargestellt, das Praxisbeispiel ist - am Umfang von window.open() gemessen - jedoch recht dürftig.

            Denn nachdem man weiß, wie man ein Fenster in einer bestimmten Größe öffnet, möchte man schließlich auch wissen, wie man es zentriert öffnet, denn dies ist ja schließlich Standard, z. B. bei Alerts und anderen Dialogen (confirm, input, ...). Ein solches Beispiel täte SelfHTML window.open() ganz gut, und werde ich in höchst einfacher Form auch vorschlagen, sobald an meiner Arbeitsstelle auch das letzte Druckstück auf Euro umgestellt ist.

            Ebenso fehlt die Sache mit dem Link zum Fenster öffnen, der sowohl mit als auch ohne JavaScript läuft.

            Für Fullscreen gibt es auch eine Lösung, die mit beiden Browsern läuft [NS aber mit Rahmen: top.moveTo(0,0);top.resizeTo(...,...)], das werde ich später noch mit der rahmenlosen IE-Option kombinieren.

            Wer jemanden das Kopieren als die Lösung anbietet ohne gleichzeitig Wissensvermittlung zu betreiben, ist geizig ohne Ende, denn er teilt sein Wissen nicht.

            Dafür fehlt mir akut die Zeit (s.o./u.), das Thema window.open() ist bei mir gerade erst in Arbeit und noch lange nicht fertig, die Funktion oben ist ja bis jetzt nur eine Ansammlung und wird noch überarbeitet. Ich habe hier den momentanen Arbeitsstand veröffentlicht, Erläuterungen fehlten da noch völlig. Später soll dazu eine erklärende Seite auf meiner HP erscheinen, aber soweit bin ich eben noch nicht. Ich vierteile mich ja schon jetzt, arbeite auch mal 24h am Stück, mehr geht absolut nicht.

            Um die fehlenden Erklärungen auszugleichen besuche ich meine Beiträge immer wieder und beantworte die Fragen dazu, nur bis jetzt kam ja noch keine vom ursprünglichen Fragesteller.

            zentriert

            Natürlich hat da noch keiner nach gefragt, das ist ja erst die zu erwartende Folgefrage.

            Ich hoffe, ich habe bald wieder mehr Zeit für Erläuterungen, und noch ein gesundes neues Jahr.

            1. hi!

              Für Fullscreen gibt es auch eine Lösung, die mit beiden Browsern
              läuft [NS aber mit Rahmen: top.moveTo(0,0);top.resizeTo(...,...)],
              das werde ich später noch mit der rahmenlosen IE-Option
              kombinieren.

              Mit "beiden Browsern"? Was meinst du damit? Soweit ich weiß, gibt es
              mehr als zwei Browser.

              bye, Frank!

  2. Was müsste ich den zu diesem Code da unten hinzufügen damit sich das nächste Fenster in einer bestimmten Größe öffnet?

    <h3 align="center"><a href="nabtrackstrack01.htm"target="_blank">Track 01</a></h3>

    Diese Frage läßt sich relativ leicht beantworten:
    Du brauchst etwas Javascript. Mein Vorschlag (der auch dann funktioniert, wenn Javascript abgeschaltet oder garnicht vorhanden ist) wäre:

    <a href="nabtrackstrack01.htm" target="_blank" onClick="window.open('nabtrackstrack01.htm','fenstername','OPTIONEN_BITTE_SELBST_EINFÜGEN'); return false;">Track 01</a>

    Die Optionen zum Fensteröffnen gibt es hier nachzuschlagen:
    </selfhtml/javascript/objekte/window.htm#open>

    Um ein Fenster in der gewünschten Breite und Höhe zu öffnen, brauchst du mindestens die Angaben "width" und "height".

    Du solltest dir außerdem überlegen, ob der User in dem Fenster praktisch garnichts darf, oder (was wesentlich besser ist) es im Prinzip ein neues, nur in der Größe vorläufig vorgegebenes Fenster ist. Navigationsleisten, das Scrollen, Größenveränderbarkeit etc. kann alles abgestellt werden bzw. auch wieder eingeschaltet werden.

    - Sven Rautenberg