webForumDet fria alternativet

Scriptproblem i FireFox

3 svar · 259 visningar · startad av Nexon

NexonMedlem sedan sep. 20053 inlägg
#1

jag har problem med ett bildscript på min sida. Det fungerar så att genom att klicka på en knapp så visas nästa bild. Detta fungerar perfekt i IE utan problem men när jag kör det i FireFox blir ramen bredare för varje gång man klickar på en knapp. Jag hoppas någon kan hjälpa mig med mitt problem. Här under ser ni koden:

<style type="text/css">
.viewer_main { border: solid black 3px; background-color: #cadbf9; font-family: Arial; }
.viewer_win { background-color:#cadbf9; border:solid white 4px; }
.viewer_button { width:18px; padding:3px; margin:2px; border:solid black 1px; background-color:white; text-align:center; font-size:12px; font-weight:bold; color:gray; cursor:pointer; }
</style>
<table class="viewer_main">
<tr>
<td style="width:600px;height:600px;vertical-align:middle;text-align:center;" class="viewer_win"><div style="overflow:auto;"><img src="" id="viewer_img" style="display:none;"></div></td>
<td style="width:30px;height:600px;vertical-align:top;"><div id="viewer_info" style="height:400px;text-align:center;overflow:auto;"></div></td>
</tr>
</table>
<script type="text/javascript">

var images=[
"bilder/bild/001.jpg",
"bilder/bild/002.jpg",
"bilder/bild/003.jpg",

];

// Ändra inte rader nedan.
var viewer={ slideshowdelay:2000 };
viewer.obj=document.getElementById('viewer_img');
viewer.picnr=0; viewer.picWidth=viewer.picHeight=0;
for(var n in images){
	document.getElementById('viewer_info').innerHTML+="<div class=\"viewer_button\" style=\"\" onclick=\"if(viewer.activebutton){ viewer.activebutton.style.color=''; } viewer.activebutton=this; this.style.color='red'; viewer.load('"+images[n]+"');\">"+n+"</div>";
}
viewer.loader=new Image();
viewer.loader.onload=function(){
	viewer.obj.src=viewer.loader.src;
	viewer.picWidth=viewer.loader.width;
	viewer.picHeight=viewer.loader.height;
	if(viewer.picWidth>viewer.width||viewer.picHeight>viewer.height){
		viewer.zoomFactor=Math.min((viewer.width-2)/viewer.picWidth,(viewer.height-2)/viewer.picHeight);
	} else { viewer.zoomFactor=1; }
	viewer.obj.width=Math.floor(viewer.picWidth*viewer.zoomFactor);
	viewer.obj.height=Math.floor(viewer.picHeight*viewer.zoomFactor);
	viewer.obj.style.display='inline';
}
viewer.load=function(str){
	viewer.obj.style.display='none'; viewer.loader.src=str;
}
viewer.zoomTo=function(z){
	z=(z)?parseFloat(z):viewer.zoomFactor;
	viewer.obj.width=Math.floor(viewer.picWidth*z);
	viewer.obj.height=Math.floor(viewer.picHeight*z);
}
viewer.slideshow=function(sw){
	if(sw){
		viewer.picnr=(viewer.picnr<images.length-1)?viewer.picnr+1:0; viewer.load(images[viewer.picnr]);
		viewer.timer=setTimeout("viewer.slideshow(true);",viewer.slideshowdelay);
	} else { if(viewer.timer){ clearTimeout(viewer.timer); viewer.timer=null; } }
}
viewer.filename=function(str){ return str.replace(/\\/g,"/").substring(str.replace(/\\/g,"/").lastIndexOf("/")+1); }
viewer.load(images[viewer.picnr]);
</script>
emissionMedlem sedan dec. 19996 095 inlägg
#2

Prova att ta bort "overflow: auto" på div:en som omger "viewer_img". Har märkt att overflow kan skapa konstiga beräkningar i FF ibland.

NexonMedlem sedan sep. 20053 inlägg
#3

Tack så mycket :D:D
Nu funkar allt som det ska. Men varför uppkommer det felet i FF och inte andra webläsare? :o

JojoxxMedlem sedan juni 20004 306 inlägg
#4

Låt gärna kommentarerna i scriptet ligga kvar är du snäll.

Genererad på 364 ms · cache AV · v20260730165559-full.f96bc7eb