Har en formulärlista med bildnamn, när man markerar ett namn vill jag ha en förhandsvisning så man ser vilken bild man väljer.
Hur gör man detta?
Visa bild vid markering
9 svar · 215 visningar · startad av ulsy
Tror det varit uppe förrut, men det är rätt enkelt;
<form>
<select name="foo" onChange="document['myImage'].src=this[this.selectedIndex].value">
<option value="1.gif">Bild 1</option>
<option value="2.gif">Bild 2</option>
</select>
<img src="1.gif" name="myImage">
</form>
Tack Fungerar bra, lite knep & knåp då jag hämtar bilderna i en databas.
Om jag vill begränsa storleken på bilderna bode man då inte kunna skriva:
<select name="foo" onChange="document['myImage']
.src=this[this.selectedIndex].value" width="100">
Det fungerar inte, vad är fel?
<img src="1.gif" name="myImage" height="100" width="100">
En annan fråga när det gäller storlek.
Om jag vill att bilden max skall vara 100 bred skriver jag
width="100"
om nu en bild är väldigt hög och jag vill begränsa den så den max får vara 250 och då bli x bred (mindre än 100) hur gör man då?
<script language="JavaScript" type="text/javascript">
var maxWidth=200;
var maxHeight=200;
function checksize(obj){
var sf;
if(obj.width>maxWidth){sf=maxWidth/obj.width; obj.width=Math.floor(obj.width*sf); obj.height=Math.floor(obj.height*sf); }
if(obj.height>maxHeight){sf=maxHeight/obj.height; obj.height=Math.floor(obj.height*sf); obj.width=Math.floor(obj.width*sf); }
}
</script>
<form>
<select name="foo" onChange="document['myImage'].src=this[this.selectedIndex].value">
<option value="1.gif">Bild 1</option>
<option value="2.gif">Bild 2</option>
</select>
<img src="1.gif" name="myImage" onLoad="checksize(this);">
</form>
Tack!
Om jag vill göra på samma sätt med en bild någon annan stans
kan jag då använda mig av scriptet?
Visst, go right ahead.
Tack! :)