M
MB
Gast
Ich habe eben mit Javascript begonnen, da PHP es nicht schafft, bilder an das Browser-Fenster anzupassen.
In der Regel habe ich Fotos von 1024 Pixel breite.
Wenn jemand eine kleinere Auflösung hat (oder es in einem kleineren Fenster ansieht),
passt das natürlich nicht.
D.h. die Grafik soll normalerweise in 1024 Pixel breite angezeigt werden,
und wenn das fenster kleiner ist, soll es entsprechend skaliert werden.
Bzw. nur beim Seitenaufruf, dynamisches nachskalieren wäre nicht so wichtig
(solche spielereien mach ich erst später, wenn das ganze mal sauber läuft).
Den folgenden Code habe ich durch suchen hier im forum zusammen gestellt.
Leider funktioniert er nicht...
Nur ein Syntaxfehler oder habe ich prinzipiell einen Denkfehler?
Ich verwende Breite und Größe (anstatt dem HTML-Befehl "width = 100%")
da ansonsten fotos mit 680x1024 größer dargestellt werden wie 1024x680.
<img src='fotos/f0/00029.jpg' id='fotoa'>
<script type="text/javascript">
<!--
var fotoa_window_width = 0
if(typeof(window.innerWidth) == 'number')
{
fotoa_window_width = window.innerWidth;
}
else if
{
fotoa_window_width = document.body.clientWidth;
}
var fotoa_scala = fotoa_window_width/1024;
if (fotoa_scala < 1)
{
var fotoa_bild = document.getElementById("fotoa");
var fotoa_image_width = fotoa_bild.style.width * fotoa_scala;
var fotoa_image_height = fotoa_bild.style.height * fotoa_scala;
fotoa_bild.style.width = fotoa_image_width;
fotoa_bild.style.height = fotoa_image_height;
}
-->
</script>
In der Regel habe ich Fotos von 1024 Pixel breite.
Wenn jemand eine kleinere Auflösung hat (oder es in einem kleineren Fenster ansieht),
passt das natürlich nicht.
D.h. die Grafik soll normalerweise in 1024 Pixel breite angezeigt werden,
und wenn das fenster kleiner ist, soll es entsprechend skaliert werden.
Bzw. nur beim Seitenaufruf, dynamisches nachskalieren wäre nicht so wichtig
(solche spielereien mach ich erst später, wenn das ganze mal sauber läuft).
Den folgenden Code habe ich durch suchen hier im forum zusammen gestellt.
Leider funktioniert er nicht...
Nur ein Syntaxfehler oder habe ich prinzipiell einen Denkfehler?
Ich verwende Breite und Größe (anstatt dem HTML-Befehl "width = 100%")
da ansonsten fotos mit 680x1024 größer dargestellt werden wie 1024x680.
<img src='fotos/f0/00029.jpg' id='fotoa'>
<script type="text/javascript">
<!--
var fotoa_window_width = 0
if(typeof(window.innerWidth) == 'number')
{
fotoa_window_width = window.innerWidth;
}
else if
{
fotoa_window_width = document.body.clientWidth;
}
var fotoa_scala = fotoa_window_width/1024;
if (fotoa_scala < 1)
{
var fotoa_bild = document.getElementById("fotoa");
var fotoa_image_width = fotoa_bild.style.width * fotoa_scala;
var fotoa_image_height = fotoa_bild.style.height * fotoa_scala;
fotoa_bild.style.width = fotoa_image_width;
fotoa_bild.style.height = fotoa_image_height;
}
-->
</script>