11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

la fonction ci-dessous permet de faire défiler un div horizontalement,
elle ne marche pas sous FF quand ma page est en strict alors que sous IE oui.

var textleft = 0;
var timer = null;

	function move(valu) {
		var widt=document.getElementById("cont").offsetWidth;
		var x = document.getElementById("cont").style;
			textleft+=valu;
			if (textleft==10)textleft=0;
				if (textleft >-409 && textleft < 5) {
					x.left=textleft;
					timer = setTimeout("move("+valu+")",20);
				}
				else {
					clearTimeout(timer);
				}
	}



je n'ai aucune erreur, il ne se passe rien c tout.
Merci pour votre aide
Modifié par lolotlm (12 Apr 2005 - 10:00)
var textleft = 0;
var timer = null;
function move(valu) {
	var widt=document.getElementById("cont").offsetWidth;
	var x = document.getElementById("cont").style;
	textleft+=parseInt(valu);
	if (textleft==10)
	{
		textleft=0;
	}
	if (textleft >-409 && textleft < 5) {
		x.left=parseInt(textleft);
		timer = setTimeout("move("+parseInt(valu)+")", 20);
	}
	else {
		clearTimeout(timer);
	}
}


Si ça ne fonctionne pas, on pourrait avoir une page avec exemple ?
J'ai enfin trouvé la solution,
il faut spécifier l'unité de mesure avec le strict :

x.left=textleft"+px+";