Avatar billede snigeren Nybegynder
07. november 2005 - 18:37 Der er 15 kommentarer og
1 løsning

åben billede i nyt vindue centreret og tilpasset i størrelse

Jeg bruger følgende script til at kunne klikke på et billede og vise en stor udgave i et nyt vindue:

<?php 
                            $p = (!empty($row["itemPhoto"]))? $row["itemPhoto"] : "notavail.jpg";

                            $t = (!empty($row["itemThumb"]))? $row["itemThumb"] : "notavail.jpg";

                            echo "<A HREF='http://www.jernbanemaerker.dk/gallery/billeder/".$p."' target='_blank'> <img src='http://www.jernbanemaerker.dk/gallery/thumbs/".$t."'>";
?>

Kan man ikke på en eller anden måde kontrollere vinduet så størrelsen bliver den samme som billedet og vinduet bliver placeret midt på skærmen?

/Snig
Avatar billede Slettet bruger
07. november 2005 - 18:40 #1
Jo, men javascript. - Spørg under dén kategori hvis roenving eller en anden ikke lige kigger forbi..

Du kan evt. også søge i javascript-kategorien, og få svaret gratis på dén måde - spørgmålet er i hvert fald stillet mange gange før -!
Avatar billede roenving Novice
07. november 2005 - 18:45 #2
F.eks.

  <script language="javascript" type="text/javascript">
    function popWin(file){
      newWin=window.open("","ResizeBillede","width=300,height=200,status=no");
      txt='<ht'+'ml><he'+'ad><ti'+'tle>Resize til billede<\57ti'+'tle><scri';
      txt+='pt language="javascript" type="text/javascript">';
      txt+='function resPic(){h=document.images[0].scrollHeight;';
      txt+='w=document.images[0].scrollWidth;window.resizeTo(w+6,h+32);window.moveTo((screen.availWidth-w-6)/2,(screen.availHeight-h-32)/2)}<\57scri';
      txt+='pt><\57he'+'ad><bo'+'dy style="overflow:hidden;';
      txt+='border:0px;margin:0px"><i'+'mg src="'+file+'" style="top:0px;left:0px;border:0px;';
      txt+='" onload="resPic();" onclick="self.close()" title="Tryk for at lukke vinduet"><\57bo'+'dy><\57ht'+'ml>';
      newWin.document.write(txt);
      newWin.document.close();
    }
  </script>
Avatar billede Slettet bruger
07. november 2005 - 18:50 #3
Tænkte nok du var på vej roenving ;o)
Avatar billede snigeren Nybegynder
07. november 2005 - 18:53 #4
Øhm,.. komprimerer man også størrelsen af filen så den ikke vejer så meget som originalen?
Avatar billede snigeren Nybegynder
07. november 2005 - 18:56 #5
hov nu blander jeg lige to spørgsmål sammen, bare glem det jeg skrev lige før...

Men jeg er ikke lige for skarp lige nu, så monstro du kan uddybe svaret lidt roenving? =)
Avatar billede roenving Novice
07. november 2005 - 18:59 #6
Ovenstående er en afart af det script, jeg viser her: http://roenving.users.whitehat.dk/WD1ResizeTilBillede.html !-)

-- prøv at klikke dig ind på det og se hvordan det bruges !o]
Avatar billede snigeren Nybegynder
07. november 2005 - 20:23 #7
nææ hvor fin =)

Det ser jo helt finno ud... har bare lige et lille spørgsmål til... Hvordan skriver jeg:
<a href="#" onclick="popWin('img/billede.jpg');return false;"><img src="img/billede.jpg" width="150" alt="Klik for fuld størrelse"></a>

ind i denne php sætning?:
<?php 
                            $p = (!empty($row["itemPhoto"]))? $row["itemPhoto"] : "notavail.jpg";

                            $t = (!empty($row["itemThumb"]))? $row["itemThumb"] : "notavail.jpg";

                            echo "<A HREF='http://www.jernbanemaerker.dk/gallery/billeder/".$p."' target='_blank'> <img src='http://www.jernbanemaerker.dk/gallery/thumbs/".$t."'>";
?>

der er noget med at php ikke kan li´ "" på samme måde som html/javascript... Jeg ved godt det er lidt pinligt at jeg ikke kan hitte ud af det selv :P
Avatar billede Slettet bruger
07. november 2005 - 21:24 #8
echo "<a href=\"#\" onclick=\"popWin('img/billede.jpg');return false;\"><img src=\"img/billede.jpg\" width=\"150\" alt=\"Klik for fuld størrelse\"></a>";
Avatar billede snigeren Nybegynder
07. november 2005 - 22:19 #9
super nu virker det,.. der er lige en sidste lille ting,.. når den viser det store billede i et nyt resized vindue, kommer der en 3-4 pixel høj hvid streg i bunden af alle billederne... hvordan kan jeg fjerne den?
Avatar billede roenving Novice
07. november 2005 - 23:44 #10
I hvilken browser prøver du den ?-)

-- og det er tallet 32 (OBS! Forekommer 2 gange !-), du skal ændre på !o]
Avatar billede snigeren Nybegynder
08. november 2005 - 23:53 #11
super nu står det til 25 så er stregen væk,.. men hvad gør det tal helt præcis?

det er explorer jeg ser den i... har de andre standard browsere styr på det script? =)
Avatar billede roenving Novice
09. november 2005 - 05:08 #12
-- som det fremgår af teksten på den nævnte side, er der nogle (meget små !-) problemer med, at alle browsere ikke nødvendigvis bruger de samme bredder og højder på menu- og statusbarer og vindueskanter, altså det, der betegnes som chrome på et vindue ...

-- hvis det skal være fuldstændig perfekt i enhver browser, skal man tage højde for de forskelle (og f.eks. på mac er den slags principielt ikke en del af programmet, så der er helt andre problemer !-)

Jeg ville finde en rimelig måde at gøre det på, så de første to browsere viste det perfekt eller næsten perfekt, for så vil de resterende ikke være langt fra !-)
Avatar billede snigeren Nybegynder
07. december 2005 - 12:53 #13
hov for søren, jeg fik da aldrig lukket spørgsmålet,.. smider du ikke lige et svar roenving =)
Avatar billede roenving Novice
08. december 2005 - 00:11 #14
Oki '-)
Avatar billede snigeren Nybegynder
08. december 2005 - 16:58 #15
´sko =)
Avatar billede roenving Novice
08. december 2005 - 17:00 #16
-- og tak for point ;~}
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