Avatar billede firas Nybegynder
05. september 2001 - 14:09 Der er 16 kommentarer og
3 løsninger

popup-vindue i forskellige opløsninger

Jeg er ved at lave et site, hvor der skal være forskellige popoup-vinduer, men de skal have samme størrelse og placeres samme sted. Hvordan kan man lave dem, så de står samme sted uanset hvilken skærmopløsning, man bruger?

Jeg har lagt en foreløbig udgave ud på nettet, som er lavet i 800x600:

http://husetkopi.subnet.dk
(det drejer sig om undermenuerne:
faciliteter, priser, kalender og links)

Hvis jeg så ser den i en højere opløsning, flytter popup-vinduet sig.
Avatar billede Slettet bruger
05. september 2001 - 14:11 #1
tja, jeg kan ikke se nogen popupvinduer...
Avatar billede firas Nybegynder
05. september 2001 - 14:16 #2
Hvid du klikker på en af hovedmenuerne - f.eks Dine interesser - klik derpå på et af disse links, så står undermenuerne i bunden.
Avatar billede rab Nybegynder
05. september 2001 - 14:19 #3
Ikke i min browser...

Du skal nok også ændre overskriften...
Avatar billede nikolajdu Nybegynder
05. september 2001 - 14:24 #4
Det her vil centrere dit popup ligegyldigt hvad.

<HTML>
<HEAD>
<TITLE></TITLE>
<script language=\"JavaScript\">
function PopWin(url,navn,h,w) {
    leftPos = Math.round((screen.availWidth-h)/2);
    topPos = Math.round((screen.availHeight-w)/2);
window.open(url,navn,\'width=\'+w+\',height=\'+h+\',left=\'+leftPos+\',top=\'+topPos+\',toolbar=No,menubar=No,location=No,scrolling=NO,resizeable=NO\');
}
</script>
</HEAD>


Og kaldet

<a href=\"#\" onClick=\"PopWin(\'http://www.ditvindue.dk\',\'Navn1\',800,500);\">pop 1</a>
<a href=\"#\" onClick=\"PopWin(\'http://www.nikolajdu.dk\',\'Navn2\',800,500);\">pop 2</a>
Avatar billede roenving Novice
05. september 2001 - 14:27 #5
Du skal tilføje den tredje parameter til dine window.open (og måske lave lidt beregning for at få det til at passe):

window.open(url, \'windowname\', \"windowFeatures\")

Dem du har brug for her er (IE4+) top og left
(NN4+) screenX og screenY, altså

window.open(url, \'windowname\', \"top=\'26\',left=\'32\',screenX=\'26\',screenY=\'32\'\")

hth
jes
Avatar billede jakoba Nybegynder
05. september 2001 - 14:39 #6
Jeg tror at det du kalder et popop vindue er det vi plejer at kalde et \'lag\'.

og ja, de kan være besværlige at placere rigtigt.

du kan evt placere et billede i \'bunden\' af filen (fx en gennemsigtig.gif) og så positionere dit lag så det altid starter samme sted som billedet.

Hvor god er du til DHTML? ( det er ikke simpelt det du beder om :-))

mvh JakobA
Avatar billede roenving Novice
05. september 2001 - 14:46 #7
>>jakoba
Der er virkelig popups, de er bare langt inde i hierarkiet, prøv at følge firas\' opskrift, så ser du dem.
Problemet er, at der ikke er positionering i de funktioner, han bruger (resten er lavet i lag, med absolut style-positionering)
Avatar billede jakoba Nybegynder
05. september 2001 - 14:53 #8
Ups. ja nu fandt jeg dem. KISS?.
Avatar billede nikolajdu Nybegynder
05. september 2001 - 14:53 #9
Kiss - Dem har jeg ikke hørt i årevis. Ku´ være jeg skulle støve en grammafonplade af...
Avatar billede firas Nybegynder
05. september 2001 - 15:22 #10
Til roenving:

Jeg er lidt i tvivl om hvordan du mener, at det ekstra parameter skal se ud. Mit script ser i øjeblikket således ud:

<!--
function PopUp(filename, winheight, winwidth, scrx, scry){
window.open(filename,\"popDialog\",\"height=\"+winheight+\",width=\"+winwidth+\",top=\"+scry+\",left=\"+scrx+\",toolbar=no,status=no,scrollbars=yes,location=no,menubar=no,directories=no,resizable=no\")
}
//-->

Popup-vinduet skal være 320 height/310 width og hvis du ser sitet i opløsning 800x600, kan du se hvordan det skal placeres.
Avatar billede roenving Novice
05. september 2001 - 15:35 #11
>>firas

Jeg fandt kun de her to, men jeg har heller kigget efter .js-filer, så det er måske der de ligger ?

Den ene:
function CSGotoLink(action) {
    if (action[2].length) {
        var hasFrame=false;
        for(i=0;i<parent.frames.length;i++) { if (parent.frames[i].name==action[2]) { hasFrame=true; break;}}
        if (hasFrame==true)
            parent.frames[action[2]].location = action[1];
        else
            window.open (action[1],action[2],\"\");

Den anden:
function CSGotoLink(action) {
    if (action[2].length) {
        var hasFrame=false;
        for(i=0;i<parent.frames.length;i++) { if (parent.frames[i].name==action[2]) { hasFrame=true; break;}}
        if (hasFrame==true)
            parent.frames[action[2]].location = action[1];
        else
            window.open (action[1],action[2],\"\");

Det virker ikke så smart, at der er flere funktioner med samme navn, og her er der ikke den tredje parameter med.

Man kan så forestille sig, at du har pasted et stort script ind, og ikke har været opmærksom på det.

jes ;-)
Avatar billede roenving Novice
05. september 2001 - 15:40 #12
Så fik jeg også kigget efter include scripts, og det ser ud, som om der kun er et webmeasure-script ??
Og så er det ovenikøbet uden for html-dokumentet med noget /script og /noscript foran ???
Avatar billede jakoba Nybegynder
05. september 2001 - 15:49 #13
Jeg tror slet ikke det du ønsker kan lade sig gøre med popop vinduer.

Når skærmen bliver større end 800*600 vil mange mennesker kikke på websider i et vindue der er mindre end hele skærmen, og der er (såvidt jeg ved) ingen måde du kan hitte ud af hvor på skærmen det vindue er placeret.

Og det er du nødt til at vide for at kunne placere popoppen på det rigtige sted i forhold til vinduet.

mvh JakobA
Avatar billede roenving Novice
05. september 2001 - 15:50 #14
>>Og så ville det sikkert også være hensigtsmæssigt, at du fik sat din titel væk fra at være \'Welcome to Adobe GoLive 5\' .
Avatar billede firas Nybegynder
05. september 2001 - 17:32 #15
Kan jeg konklude, at det ikke er muligt at lave i et Javascript? Er der nogen, der kan foreslå en anden måde at lave det på?
Avatar billede jakoba Nybegynder
05. september 2001 - 17:36 #16
Som et lag, æogesom du har lavet teksten fra første underniveau i menuen.

Eller du kunne vælge at sige at det er da helt fint hvis popoppen står udenfor vinduet. så dækker den ikke over det du vil vise. og brugeren kan da selv flytte den et andet sted hen hvis han vil.

mvh JakobA
Avatar billede jakoba Nybegynder
05. september 2001 - 17:37 #17
Ups. æogesom -> ligesom
Avatar billede firas Nybegynder
05. september 2001 - 17:48 #18
Ok - jeg ved ikke om det er helt retfærdigt, men i får 10 pts hver.
Avatar billede roenving Novice
06. september 2001 - 00:27 #19
Jamen, du fortæller at du har en funktion -- den findes jo slet ikke i dit doukument ????????
;-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester