| Statystyka |
 |
Wizyt: 2 002 636 |
 |
Wizyt dzisiaj: 388 |
 |
Wizyt wczoraj: 756 |
 |
Wizyt w m-cu: 4690 |
 |
Osób on-line: 7 |
 |
Prenumeratorzy: 226 |
|
|
 |
| Porady |
[PHP/JavaScript] Jak otworzyć nowe okno dopasowujące się do rozmiarów zdjęcia? Krzysztof Szypulski - Poniedziałek, 13 marca 2006 21:28:06 | Często tworząc galerię lub jakiś inny system, który wymaga powiększenia miniatury do wielkości oryginalnej używam kodu, który przedstawię poniżej.
| PRZYKŁAD |
<?php
// scieżki do oryginału i miniatury $duze = "foto/zdjecie_duze.jpg"; $male = "foto/zdjecie_male.jpg";
// pobieram rozmiar oryginału $roz = getimagesize($duze);
// wyświetlam miniaturę ze zdarzeniem onclick // którym wywołuję okno z oryginalnym zdjęciem echo "<img src=\"$male\" alt=\"Powiększ zdjęcie\" title=\"Powiększ zdjęcie\" style=\"cursor: pointer;\" onclick=\"window.open('podglad.php?z=$duze','podglad', 'width=$roz[0],height=$roz[1],left=0,top=0')\" />";
?> |
Plik podglad.php
| PRZYKŁAD |
<?php echo '<?xml version="1.0" encoding="iso-8859-2" ?>'; ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/ xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-type" content="text/html; charset=iso-8859-2" /> <title>Podgląd</title> </head> <body marginheight="0" marginwidth="0" style="margin: 0;"> <?php
// pobieram dane oryginału $z = $_GET['z'];
if($z) { // wyświetlam oryginał echo "<a href=\"javascript:window.close();\"><img src=\"$z\" border=\"0\" title=\"Zamknij okno\" /></a>"; }
?> </body> </html> |
| Warto zajrzeć: http://pl.php.net/manual/pl/function.getimagesize.php |  |  |
| Komentarze |
emil
(83.10.21.xxx) Piątek, 29 września 2006 14:53:02
|
A jak zrobic gdy mamy wiele zdjec?
pozdrawiam
|
| Od administratora: |
| Tak samo dla wszystkich zdjęć w galerii. |
McFly
(83.15.210.xxx) Piątek, 01 grudnia 2006 13:20:00
|
ehe po co się męczyć ?
<?php
$obrazek = 'plik.jpg';
list ( $width, $height ) = getimagesize ( $obrazek );
echo ( '<a href="#" onclick="window.open(''.$obrazek.'', 'Obrazek', 'resizable=yes, width='.( ceil ( $width ) ).', height='.( ceil ( $height ) ).'');">Obrazek</a>' );
?>
|
Hajime
(83.28.203.xxx) Poniedziałek, 18 grudnia 2006 20:11:44
|
skorzystałem z wersji pana Krzysztofa. Działa świetnie. :) Dzięki wielkie.
|
Zapytanie
(81.190.53.xxx) Sobota, 21 kwietnia 2007 21:04:28
|
Mam prośbę może mi ktoś przerobić to tak aby po kliknięciu na zdjęcie otwierało się w nowym oknie o rozmiarach zdjęcia
<html>
<head>
<script type="text/javascript">
<!--
function okno(p,s,w) {
w=open('','','width='+s+',height='+w);
with(w.document) {
write('<html><head><title>'+p+'</title></head><body background="'+p+'"');
write(' onMousedown="self.close()"></body></html>');
close();
}
}
//-->
</script>
</head>
<body bgcolor="#008000">
<table align="center">
<tr><td valign="top"><?
$ile = 4; //ilość zdjęć w jednym wierszu tabeli
$fol = "./fotosy"; //folder ze zdjęciami
$i = 1;
$dane = @file($fol."/dane.txt");
if(is_array($dane))
foreach($dane as $v) {
$d = explode("|", chop($v));
echo "<a href="$fol/$d[0]" onClick="okno('$fol/$d[0]',$d[1],$d[2]); return false">".
"<img src="$fol/$d[3]" width="$d[4]" height="$d[5]"></a>".
($i == $ile ? "</td></tr><tr><td valign="top">" : "</td><td valign="top">")."n";
$i < $ile ? $i++ : $i = 1;
}
?></td></tr>
</table>
</body>
</html>
|
| Ze względu na brak czasu na moderowanie komentarzy, zawieszam możliowść ich dodawania. Masz pytanie, wykorzystaj formularz "Zadaj pytanie". |
| Publikowane komentarze są prywatnymi opiniami użytkowników serwisu. Serwis nie ponosi odpowiedzialności za treść opinii. |
|
|
|
 |
| Zadaj pytanie |
Nie znalazłeś(aś) odpowiedzi na nurtujące Cię pytanie? Zapytaj mnie, może będę umiał Ci pomóc.
|
|