cross browser

Status
Niet open voor verdere reacties.

mikevanderroost

Nieuwe gebruiker
Lid geworden
13 sep 2007
Berichten
1
hallo,

Ziehier het stuk javascript waarmee ik een figuur op mijn website wil laten te voorschijn komen in IE, Moz en andere browsers:


Hmove= -100;



function getObj(name)
{
if (document.getElementById)
{
this.obj = document.getElementById(name);
this.style = document.getElementById(name).style;
}
else if (document.all)
{
this.obj = document.all[name];
this.style = document.all[name].style;
}
else if (document.layers)
{
this.obj = document.layers[name];
this.style = document.layers[name];
}
}


function moveObjRight (obj)
{
var x = new getObj(obj);

x.style.left= Hmove;
Hmove+= 2;
if(Hmove<100)
window.setTimeout('moveObjRight (x.obj.id)', 0);}




Dit is wat binnen mijn .htm staat om de functie op te roepen


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
>
<html>
<head>
<title>Bio</title>
<link rel="stylesheet" type="text/css" href="pagestyle.css" >
<link rel="stylesheet" type="text/css" href="moving.css" >
<script language="JavaScript" src="MoveImg.js">
</script>
</head>
<body >
<img id="JS" class="moving" height=100 width=40 align=baseline border=0 hspace=0 src="bio.jpg">
<script language="JavaScript">
moveObjRight('JS');
</script>
</body>
</html>






Mijn vraag is nu: het werkt in geen enkele browser, en ik snap niet waarom!
 
Het doet 't één keer maar daarna gaat het hier fout:
PHP:
if(Hmove<100) window.setTimeout('moveObjRight(x.obj.id)', 0);
De 'x' bestaat niet meer buiten de functie, parameters bij een setTimeOut() zijn altijd lastig. Maar zo bv werkt 't:
PHP:
if (Hmove < 100) setTimeout('moveObjRight(\'JS\')', 0);
Wel .moving { position: absolute;} in het stylesheet zetten! :)


Vr.Gr. Egel.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan