Javascript.style ne fonctionne pas

Résolu
Rhydan1 Messages postés 391 Date d'inscription   Statut Membre Dernière intervention   -  
Rhydan1 Messages postés 391 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Je travail actuellement sur un site sous EasyPHP. Je tente d'appliquer un style à un div avec du javascript. Seul soucis : Le style JS n'est pas prit en compte et arrête mon script. Je place un premier "alert" avant l'application du style, et un "alert" après.

Voici mon code JS :

var larg, haut;
			if (document.body) {
				larg = (document.body.clientWidth);
				haut = (document.body.clientHeight);
			} else {
				larg = (window.innerWidth);
				haut = (window.innerHeight);
			}

			alert('lol1');
			
			var d = document.getElementById("lol");
			d.style.position = "absolute";
			
			alert('lol2');


En lancant la page, seulement le alert('lol1') s'affiche.

Espèrent trouver une réponse,
Cordialement, moi.


2 réponses

Jean-François Pillou Messages postés 19261 Date d'inscription   Statut Webmaster Dernière intervention   63 277
 
Si tu es sur Chrome ou Firefox, ouvre la console Javascript pour en savoir plus sur l'erreur.

A mon avis, il n'a pas trouvé l'élément ayant l'ID "lol", du coup "d" vaut undefined et d.style.position déclenche une erreur, puisque undefined n'a pas de propriété "style".

Essaye de mettre a minima ceci :

var d = document.getElementById("lol");
if(d && d.style){
d.style.position = "absolute";
}
0
Rhydan1 Messages postés 391 Date d'inscription   Statut Membre Dernière intervention   70
 
Effectivement par ton code, je me rend compte qu'il ne trouve pas la div "lol".
Ce qui m'étonne pourtant, c'est que cette div existe bien... Alors pourquoi ne la trouve-t-il pas ?
0
Rhydan1 Messages postés 391 Date d'inscription   Statut Membre Dernière intervention   70
 
Résolu, le script s'exécutait simplement avant que "lol" ne se crée.
0