Popup zentriert Problem

weissNix

Aktives Mitglied
Hallo zusammen

Ich habe ein kleines Problem und zwar will ich, dass sich ein PopUp Fenster zentriert öffnet, nur habe ich leider keine Ahnung von JavaScript Ich hab mal die untenstehende Funktion angefangen zu schreiben, aber das funktioniert irgendwie nicht. die Variable links wird zwar richtig berechet, aber das Popup wird ganz rechts geöffnet. Kann mir da vielleicht jemand helfen?


CODE
<script language="javascript">

function popup()
{

var bild_breite = <?PHP echo $box_width; ?>;
var links = ((screen.width-bild_breite)/2);

box = window.open('','box', 'width=10, height=10, left=links , scrollbars=no, status=yes, top=200');
box.focus();
return true;
}


 
CODE <script language="javascript">

function dopopup(url, name, nwidth, nheight, scrollbars)
{
F1=open(url,name,"left="+(screen.width-nwidth)/2+",top="+(screen.height-nheight)/2+",width="+nwidth+", height="+nheight+", menubar=no, locationbar=no, scrollbars="+scrollbars+", resizable=no, status=no")
F1.focus();
}

</script>


Die Funktion kann man leicht aufrufen, für jede Gelegenheit.

In deinem Beispiel wäre es zB.


CODE <script language="javascript">
dopopup('', 'box', 10, 10, 'no');
</script>


Allerdings bezweifle ich, das ein Popup mit der Größe 10x10 machbar ist.
 
Vielen Dank für die Antwort, die Fenstergrösse wird noch nicht beim Aufruf berechnet desshalb, hatte ich einfach einen Wert genommen
wink.gif
Habe aber noch eine Frage, wie kann man mit JavaScript die tatsächlich verfügbare Fläche für ein Fenster heraussfinden, also ein Fenster im Fullscreen öffnen?

EDIT: Sry damals wurde es noch vorher berechnet jetzt nicht mehr
tongue.gif
 
Wenn du die Funktion von oben nimmst, also die:

CODE <script language="javascript">

function dopopup(url, name, nwidth, nheight, scrollbars)
{
F1=open(url,name,"left="+(screen.width-nwidth)/2+",top="+(screen.height-nheight)/2+",width="+nwidth+", height="+nheight+", menubar=no, locationbar=no, scrollbars="+scrollbars+", resizable=no, status=no")
F1.focus();
}

</script>


geht es ganz einfach so:


CODE <script language="javascript">
dopopup('', 'box', screen.width, screen.height, 'no');
</script>
 
QUOTE (Maik @ Sa 6.5.2006, 16:12) Wenn du die Funktion von oben nimmst, also die:


CODE <script language="javascript">

function dopopup(url, name, nwidth, nheight, scrollbars)
{
F1=open(url,name,"left="+(screen.width-nwidth)/2+",top="+(screen.height-nheight)/2+",width="+nwidth+", height="+nheight+", menubar=no, locationbar=no, scrollbars="+scrollbars+", resizable=no, status=no")
F1.focus();
}

</script>


geht es ganz einfach so:


CODE <script language="javascript">
dopopup('', 'box', screen.width, screen.height, 'no');
</script>


Hmja aber dann geht das Popup doch über oder unter die Taskleiste, gibt es keinen Befehl für die Aufläsung - die Taskleiste?
 
Bin nicht sicher, aber kannst ja mal so probieren:

CODE
<script language="javascript">

function dopopup(url, name, nwidth, nheight, scrollbars)
{
F1=open(url,name,"left=0,top=0,width="+nwidth+", height="+nheight+", menubar=no, locationbar=no, scrollbars="+scrollbars+", resizable=no, status=no")
F1.focus();
}

</script>



Das obere script ist etwas anders, als in den vorherigen Beiträgen.


CODE
<script language="javascript">
dopopup('', 'box', screen.availWidth, screen.availHeight, 'no');
</script>

 
QUOTE (Maik @ Sa 6.5.2006, 17:54) Bin nicht sicher, aber kannst ja mal so probieren:


CODE
<script language="javascript">

function dopopup(url, name, nwidth, nheight, scrollbars)
{
F1=open(url,name,"left=0,top=0,width="+nwidth+", height="+nheight+", menubar=no, locationbar=no, scrollbars="+scrollbars+", resizable=no, status=no")
F1.focus();
}

</script>



Das obere script ist etwas anders, als in den vorherigen Beiträgen.


CODE
<script language="javascript">
dopopup('', 'box', screen.availWidth, screen.availHeight, 'no');
</script>



Vielen Dank, das scheint zu funktionieren, nur habe ich jetz ein Problem, wenn die Taskleiste nicht unten ist, (z.B bei mir
unsure.gif
), weiss ich nicht wohin plazieren, also schon klar müsste ich es dann unten plazieren nur weiss ich ja nicht wo jemand seine Taskleiste hat... Gibt es dafür auch irgendwelche Lösungsansätze oder kann man darüber hinwegsehen, da sowieso die meisten Leute die Taskleiste unten haben?
 
Zurück
Oben