Javascript.style ne fonctionne pas

Résolu/Fermé
Rhydan1 Messages postés 382 Date d'inscription jeudi 3 juillet 2014 Statut Membre Dernière intervention 2 avril 2017 - 30 sept. 2015 à 15:51
Rhydan1 Messages postés 382 Date d'inscription jeudi 3 juillet 2014 Statut Membre Dernière intervention 2 avril 2017 - 3 oct. 2015 à 10:05
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 18301 Date d'inscription lundi 15 février 1999 Statut Webmaster Dernière intervention 16 février 2023 63 274
30 sept. 2015 à 15:59
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 382 Date d'inscription jeudi 3 juillet 2014 Statut Membre Dernière intervention 2 avril 2017 70
30 sept. 2015 à 16:04
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 382 Date d'inscription jeudi 3 juillet 2014 Statut Membre Dernière intervention 2 avril 2017 70
3 oct. 2015 à 10:05
Résolu, le script s'exécutait simplement avant que "lol" ne se crée.
0