webForumDet fria alternativet
Logga in / Bli medlem

Visa bild vid markering

JavaScript

9 svar · 217 visningar · startad av ulsy

Medlem sedan aug. 2002121 inlägg
Trådstart#1

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?

Medlem sedan juni 20004 308 inlägg
#2

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>
Medlem sedan aug. 2002121 inlägg
#3

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?

Medlem sedan dec. 2000557 inlägg
#4
<img src="1.gif" name="myImage" height="100" width="100">
Medlem sedan aug. 2002121 inlägg
#5

Oj vad lätt det blev :)

Tack för hjälpen!

Medlem sedan aug. 2002121 inlägg
#6

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å?

Medlem sedan juni 20004 308 inlägg
#7
<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>
Medlem sedan aug. 2002121 inlägg
#8

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?

Medlem sedan juni 20004 308 inlägg
#9

Visst, go right ahead.

Medlem sedan aug. 2002121 inlägg
#10

Tack! :)

267 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)