Avatar billede eikhorsholm Nybegynder
26. februar 2005 - 20:41 Der er 9 kommentarer og
1 løsning

resizeTo(width, height) lidt for lille?

Når jeg bruger nedenstående resie-funktion til at ændre størrelsen på mit popup-vindue:

resizeTo(width, height);

så er det selve browseren som tilpasses den størrelse, det betyder at der kommer scrollbar på mit popup-vindue, da indholdet lige er lidt størrere end vinduet. Hvordan ændrer jeg det?
Avatar billede jint Nybegynder
26. februar 2005 - 20:45 #1
indsæt denne kode i din popup:

<!--
window.moveTo(20, 20);

function FixSize(){
var x = document.pic.width + 12;
var y = document.pic.height + 31;

if (screen.availWidth<x) { x = screen.availWidth - 28; }
if (screen.availHeight<y) { y = screen.availHeight - 28; }

window.resizeTo(x,y);
}
//-->

den er tyvstjålet fra www.lunarstorm.dk og den virker.
Avatar billede eikhorsholm Nybegynder
26. februar 2005 - 20:47 #2
+ 12 og + 31 er det ikke afhængigt at ens browser. Jeg mener, det vil vel være forskelligt fra Netscape, IE, Opera, Firefox, Safari osv. Om man bruger store eller små ikoner i sin browser osv.

Vil helst godt have et helt generelt script :-)
Avatar billede roenving Novice
26. februar 2005 - 21:17 #3
Avatar billede eikhorsholm Nybegynder
26. februar 2005 - 21:36 #4
roenving --> der sker vel det samme, som i jint's eksempel. At man blot lægger en variabel til hhv. height og width. Problemet er jo, at dette kan variere fra computer til computer. Det afhænger jo bl.a. af browseren og hvilket theme man evt. kører med?
Avatar billede roenving Novice
26. februar 2005 - 21:45 #5
Jepz, og du kan se min kommentar i eksemplet: !og (praktisk taget) i" ...

-- du kan jo kaste dig ud i browser-detection, men themes tror jeg ikke du kan detecte (hvis de overhovedet har en betydning !-)
Avatar billede roenving Novice
26. februar 2005 - 21:51 #6
-- og det med store eller små ikoner er vel ikke et parameter, hvis man vælger at åbne sin popup uden nogle chrome-ting ?-)
Avatar billede eikhorsholm Nybegynder
27. februar 2005 - 11:47 #7
Jeg er efterhånden kommet frem til dette:

function popup(url, title, height, width) {
  popupWindow = window.open('','popup','scrollbars=no');
  popupContent = "<html>\n\n";
  popupContent += "<head>\n";
  popupContent += "<title>"+ title +"</title>\n";
  popupContent += '<link href="css/stylesheet.css" rel="stylesheet" type="text/css" />'+"\n";
  popupContent += "</head>\n\n";
  popupContent += '<body style="overflow: hidden;">'+"\n\n";
  popupContent += '<img onclick="window.close()" src="'+ url +'" style="cursor: pointer;" />'+"\n\n";
  popupContent += "</body>\n\n";
  popupContent += "</html>";

  popupWindow.moveTo((screen.width - width) / 2, (screen.height - height) / 2);
  popupWindow.resizeTo(width, height);

  popupWindow.document.open();
  popupWindow.document.write(popupContent);
  popupWindow.document.close();
}

Er der nogen som har forslag til forbedringer mv.? Grunden til, at jeg bruger overflow: hidden; er at IE åbenbart er den eneste som regerer på scrollbars=no.

Jeg har testet ovenstående kode i IE, Firefox, Netscape, Opera og Safari og ser ud til, at virke.

Det kunne være rigtig lækkert, at kunne undgå, at skulle have height og width med. Men jeg har prøvet forskellige ting, og kan ikke lige få det til at virke. Og hvis man kunne få vinduet til at være i focus hver gang popup-vinduet blev loadet, så ville det også være lækkert.

Nogen forslag til de sidste par spørgsmål?
Avatar billede eikhorsholm Nybegynder
27. februar 2005 - 11:48 #8
P.S. Det virker også som om scrollbars=no fjerner alt med hensyn til toolbar, location, status osv. Kan dette virkelig passe?
Avatar billede roenving Novice
27. februar 2005 - 14:21 #9
Jepz, for ifølge den gamle standard er alle 8 boolean variabler true, hvis ingen af dem er til stede, mens bare tilstedeværelsen af en vil sætte alle ikke-nævnte til false !-)

-- se f.eks. listen over de 8 properties på window-features her:

http://roenving.users.whitehat.dk/WindowLaboratory.html
Avatar billede eikhorsholm Nybegynder
27. februar 2005 - 22:41 #10
Jeg lukker dette spørgsmål. Jeg har oprettet et nyt, som jeg håber er lidt mere overskueligt.

Håber virkelig det er i orden?
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