JavaScript - HTML oder wie?

Dieses Thema im Forum "Software" wurde erstellt von meisterleise, 2. April 2004.

  1. meisterleise

    meisterleise Active Member

    ;( Ich werd' noch wahnsinnig!
    Ich versuche seit einer halben Ewigkeit etwas eigentlich ganz einfaches hinzukriegen:

    Ich möchte auf einen Link klicken und dann soll sich ein kleineres Fenster - aber bitteschön genau in der Mitte des Bildschirms und zwar egal welche Auflösung dieser hat - öffnen.

    Habe schon diverse JavaScript Vorschläge bekommen. Aber immer, wenn ich denke, jetzt habe ich's, findet sich wieder ein Browser der damit nicht klarkommt.
    Mindestvoraussetzung wo's funktionieren soll:
    IE5-6 PC, IE5 MAC, Safari, Mozilla

    Hat da nicht jemand ein ausgetestetes Script für mich?
    Also - äh - bevor ich durchdreh!?!

    [Hysterikerfresse]
     
  2. LicetBovi

    LicetBovi New Member

    Ja, ja, so ist das!
    Wenn du willst, dass ein Script auf wirklich allen Systemen mit allen Browsern funktioniert dann -äh, vergiss es.

    Immerhin kann man mit einiger Mühe eine JavaScript-Abfrage machen, mit welchem Browser man es zu tun hat und dann entsprechend angepasste Funktionen aufrufen - wenn es sich denn lohnt. Das funktioniert aber z.B. bei Opera nur eingeschränkt, da sich dieser Browser auch als ein völlig anderer ausgeben kann. Nicht auf Opera, aber immerhin auf den von dir angegebenen Zielplattformen funktioniert für mich dieses Script:

    function aufplopp()
    {


    fbreite= 300; // Die Breite des Popups
    fhoehe=400; // Die Hoehe des Popups
    zeug = "width=" + fbreite +" ,height=" + fhoehe +",status=no, scrollbars=no, resizable=no, menubar=no, location=no" ;

    adr="irgendwas.htm";


    fenster = window.open(adr, "" , zeug);//oeffnet das neue Fenster
    hmitte= screen.width/2;//ermittelt den horizontalen Bildschirmmittelpunkt
    vmitte= screen.height/2;//ermittelt den horizontalen Bildschirmmittelpunkt
    // damit der Mittelpunkt des neuen Fensters mit dem des Screens uebereinstimmt,
    // muss jeweils die Haelfte seiner Hoehen- und Breitenwerte von dem Wert der Bildschirmmitte abgezogen werden

    hpos= hmitte-(fbreite/2);
    vpos= vmitte-(fhoehe/2);
    fenster.moveTo(hpos, vpos);// bewegt das Fenster zu seinem Bestimmungsort - hoffentlich
    fenster.focus();
    }


    Ich hoffe, es hilft...
    (Alle Angaben natürlich ohne Gewähr!;) )
     
  3. meisterleise

    meisterleise Active Member

    Danke für deine Antwort, Licet

    Ich habe dein Script auf meine Startseite gleich hinter
    <body bgcolor="#ffffff">
    eingefügt und statt irgendwas.htm die zu öffnende Seite eingetragen. Aber es tut sich nichts. Was mache ich falsch?

    Dann habe ich das gescchrieben und das Script eingefügt, ging aber auch nicht:
    <body bgcolor="#ffffff">
    <SCRIPT language="JavaScript"><!--

    --- dein Script ---

    </script>


    Sagte ich schon, dass ich Anfänger bin…? :embar:
     
  4. meisterleise

    meisterleise Active Member

    Die kleine zentrierte Seite soll sich eigentlich auch erst öffnen, wenn man auf einen entsprechenen Link klickt. Wo lässt sich das in dein Script einbauen?
     
  5. hannibal

    hannibal New Member

    Du mußt natürlich das obige Script mit "onclick=Funktionsname()" in den Link einfügen.
    Wie das genau geht solltest Du vielleicht mal in self-htm nachschlagen.
     
  6. meisterleise

    meisterleise Active Member

    Danke!
    Ich habe jetzt ein Script gefunden, dass genau so funktioniert, wie ich es mir vorgestellt habe. Und es läuft auch auf der Dose.
    Mit dem obigen Vorschlag bin ich Dummchen leider nicht klargekommen.

    Wenn jemand Interesse hat, poste ich natürlich gerne meine Lösung hier…
    :klimper:
     
  7. SRALPH

    SRALPH New Member

    klopf, klopf... ich habe daran interesse :D

    RALPH
     
  8. QNX

    QNX New Member

    // Die Funktion "posi()" prüft die Bildschirmauflösung und setzt das Fenster in die Bildschirmmitte
    // in den Variablen "b"=Breite und "h"=Höhe wird die Größe des zu öffnenden Fensters der Funktion übergeben
    // Funktion kann geprüft werden indem man die Fensterposition und Größe ändert und "Reload" am Browser betätigt.


    function posi(b,h){
    var sw = (document.layers) ? outerWidth : screen.width;
    var sh = (document.layers) ? outerHeight : screen.height;
    var ow = (document.layers) ? outerWidth-innerWidth : 0;
    var oh = (document.layers) ? outerHeight-innerHeight : 0;
    if(sw >= b && sh >= h){
    window.resizeTo(b-ow,h-oh);
    moveTo((sw-b)/2,(sh-h)/2);
    };
    return;
    }


    Aufruf der Funktion erfolgt dann zum Beispiel so:

    posi(800,600);


    Es öffnet ein Fenster mit der Auflösung von 800x600 in der Mitte des Bildschirmes.



    :cool: QNX
     
  9. SRALPH

    SRALPH New Member

    hast du mal eine von deinen eigenen seiten als beispiel :confused:

    RALPH
     
  10. QNX

    QNX New Member

    Na ich schau mal!
     
  11. QNX

    QNX New Member

    schau doch mal hier !!!


    :cool: QNX

    PS: Ich hoffe das hilft euch weiter! :)

    habe den Link wieder rausgenommen.
     

Diese Seite empfehlen