onLoad="Bildgrüßeändern()"

Mr. FISHMAN

Erfahrenes Mitglied
Hi,

ich habe eine Art Gallerie. da werden nun die Bilder alle aufgelistet.
Nun möchte ich das Wenn man auf ein Bild klcikt das Bild in groß erscheint.
Als neue Seite im selben Fenster.
Wenn ich aber nun Bilder von 1024x768 habe und der Betrachter nur 800x600
ist das ziemlich blöd, da er nicht das bild komplett sieht.
ist es Möglich eine Seite aller:
Code:
<html>
<head>
</head>
<body onLoad="resizeImage()">
<img name="image" src="dummy.gif" alt="" border="0">
</body>
</html>
Zu erstellen und dann per Javascript am Anfang die richtige Größe des Bildes einzustellen?

und wie gebe ich die URL von Der Gallerie- zur Anzeigeseite weiter?
Die Bilder haben als Link javascript:openPic('bild');

Wie müssen nun diese Beiden Funktionen aussehen?

Grtz MrF

4HLP
 
Um die Bilder in der Größe anzupassen nutze die folgende Funktion:
Code:
<script type="text/javascript">
<!--
function resizeImage(bildname)
{
if(screen.width == 800)
 document.write("<img src=bildname width="750" height="550">");
else
 document.write("<img src=bildname width="1024" height="768">");
}
//-->
</script>

Code nicht getestet!
 
Danke es Funktioniert.

Aber wie bekomme ich nun die URL übergeben?
Bei PHP kann man ja file.htm?bild=test.gif
Aber wie mach ich das bei Javascript?
und wie spreche ich das dann im neuen Dokument an?
wie bei PHP $_GET['bild']

(vergleich mit PHP zum besseren Verständnis)

Grtz MrF

4HLP
 
das geht glaube ich mit JS gar nicht. Wenn du weist, wie es in PHP geht, warum willst du es dann unbedingt mit JS machen?


[off-topic]
Die Pop-Ups auf deiner HP sind echt nervig.
[/off-topic]
 
bei Javscript gehts über location.search.
Der Einfachheit halber solltest du nur den Dateinamen,ohne Variablennamen übergeben:
Code:
//datei.html?bild.gif
bild=String(location.search());
bild=bild.substring(1,bild.length);
//"bild"ist nun "bild.gif"
 
hi,

weil ich es für jemand anders mache der nen server hat der kein
PHP kann.

Oki, ich kann die POP-Ups ja wieder raus nehmen.

Grtz MrF


axo ich hab es nun:

Das als Aufruffunktion:
Code:
function openPic(url) {
  url = "show_big.htm?pid="+url;
  window.location.href = url;
}

Das dann in die Seite wo es angezeigt werden soll:
Code:
if(window.location.search != "") {
  parameter = window.location.search;
  array = parameter.split('=');
  pid = array[1];
}
else
 pid="leer.gif";
function resizeImage(bildname)
{
 document.write("<div align='center'><a href='javascript:history.back(1)'>zurück</a><br>");
if(screen.width < 800)
 document.write("<img src='"+bildname+"' width='180' height='180' border=0>");
else if(screen.width == 800)
 document.write("<img src='"+bildname+"' width='250' height='250' border=0>");
else
 document.write("<img src='"+bildname+"' width='450' height='450'>");
 document.write("</div>");
}
(Funtioniert nur mit einem Parameter)
 
Wenn du mehrere Parameter übergeben willst,splitte den String noch weiter auf
Code:
<script type="text/javascript">
if(window.location.search != "")
{
  parameter = window.location.search;parameter=parameter.substring(1,parameter.length);
  tmp= parameter.split('&');GET=new Array();
  for(i=0;i<tmp.length;++i){x=tmp[i].split('=');GET[x[0]]=x[1];}
}
</script>
Da erhältst du nen feinen Array namens "GET",auf den du wie in PHP zugreifen kannst :)
 

Neue Beiträge

Zurück