webForumDet fria alternativet

förstora - Ja, förminska- ?

10 svar · 384 visningar · startad av Jesper T

Jesper TMedlem sedan nov. 20017 144 inlägg
#1

För att förstora ett element:

<SCRIPT type="text/javascript">
var y=1;
function zoom(name,maxy){
eval("document.getElementById('"+name+"').style.height=y+'px'")
if(y < maxy) { y = y + 10; }
setTimeout("zoom('"+name+"',"+maxy+"), 10");
}
</SCRIPT>

Men hur sjutton förminskar man detsamma med samma metod?

frankofMedlem sedan jan. 20016 874 inlägg
#2

korkad kanske ;)
Men är det inte bara att sätta minus(-) på rätt plats :q

<SCRIPT type="text/javascript">
var y=1;
function zoom(name,maxy){
eval("document.getElementById('"+name+"').style.height=y+'px'")
if(y < maxy) { y = y - 10; }
setTimeout("zoom('"+name+"',"+maxy+"), 10");
}
</SCRIPT>
Jesper TMedlem sedan nov. 20017 144 inlägg
#3

Nej, kompis.
Då försvinner elementet nästan helt och jag får ett scriptfel.
Testa själv:

<SCRIPT type="text/javascript">
var y=1;
function zoom(name,maxy){
eval("document.getElementById('"+name+"').style.height=y+'px'")
if(y < maxy) { y = y - 10; }
setTimeout("zoom('"+name+"',"+maxy+"), 10");
}
</SCRIPT>

<input type="button" onClick="zoom('bilden',20)" value="förminska">
<br>
<img src="http://www.ideenreich.com/illu/bulo.gif" width="200" height="200" id="bilden">
dectgapMedlem sedan sep. 20021 655 inlägg
#4
<SCRIPT type="text/javascript">
var y=200;
function zoom(name,miny){
eval("document.getElementById('"+name+"').style.height=y+'px'")
if(y > miny) { y = y - 10; }
setTimeout("zoom('"+name+"',"+miny+"), 10");
}
</SCRIPT>
JojoxxMedlem sedan juni 20004 308 inlägg
#5

Gjorde en liten variant som skalar båda axlarna proportioneligt om man inte hårdstyr med något annat:

<script type="text/javascript">
function zoom(id,y,x){
	var obj=document.getElementById(id);
	var w=parseInt((obj.style.width)?obj.style.width:obj.width);
	var h=parseInt((obj.style.height)?obj.style.height:obj.height);
	if(y&&!x)
		x=parseInt(w*(y/h));
	if(x&&!y)
		y=parseInt(h*(x/w));
	obj.style.height=y+"px";
	obj.style.width=x+"px";
}
</script>

<form>
<input type="button" onClick="zoom('bilden',null,30)" value="Bredd 30">
<input type="button" onClick="zoom('bilden',300)" value="Höjd 300">
<input type="button" onClick="zoom('bilden',300,30)" value="Höjd 300, Bredd 30">
<input type="button" onClick="zoom('bilden',200,200)" value="Återställ">
</form>

<br/>
<img src="http://www.ideenreich.com/illu/bulo.gif" width="200" height="200" id="bilden"/>
Jesper TMedlem sedan nov. 20017 144 inlägg
#6

Jättesnyggt jojoxx, men det fina i kråksången var ju att det gled så där snyggt vettu. ;)

Jesper TMedlem sedan nov. 20017 144 inlägg
#7

Hä fick bli så här;

<SCRIPT type="text/javascript">
var y=1;
var z=250;
function zoomopen(name,maxy){
	eval("document.getElementById('"+name+"').style.height=y+'px'")
		if(y < maxy) { y = y + 10; }else{y=1;return false;}
			setTimeout("zoomopen('"+name+"',"+maxy+"), 10");
							}
function zoomclose(name,miny){
	eval("document.getElementById('"+name+"').style.height=z+'px'")
		if(z > miny) { z = z - 10; }else{z=250;return false;}
			setTimeout("zoomclose('"+name+"',"+miny+"), 10");
							}
</SCRIPT>
dectgapMedlem sedan sep. 20021 655 inlägg
#8

Varför använder du eval över huvud taget?

Indenteringen är förresten ganska missvisande.

Jesper TMedlem sedan nov. 20017 144 inlägg
#9

Får inte det att funka utan eval.
Tips?

dectgapMedlem sedan sep. 20021 655 inlägg
#10
<SCRIPT type="text/javascript">
var y=1;
var z=250;
function zoomopen(name,maxy){
	document.getElementById("name").style.height=y+'px';
	if(y < maxy) { y = y + 10; }else{y=1;return false;}
	setTimeout("zoomopen('"+name+"',"+maxy+"), 10");
}

function zoomclose(name,miny){
	document.getElementById("name").style.height=z+'px';
	if(z > miny) { z = z - 10; }else{z=250;return false;}
	setTimeout("zoomclose('"+name+"',"+miny+"), 10");
}
</SCRIPT>
Jesper TMedlem sedan nov. 20017 144 inlägg
#11

Nästan ;)
document.getElementById(name).style.height=z+'px';

137 ms totalt · 3 externa anrop · v20260731065814-full.86db40fa
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)