11545 sujets

JavaScript, DOM et API Web HTML5

Modérateur
Bonjour/bonsoir a tous.

A l'aide d'un evenement "onclick" j'essaie de remonter vers la balise parente puis de redescendre vers la balise suivante.

onclick:
onclick= "var testi = this.parentNode;enfant(testi);"


fonction appelée

function enfant(testi) {
	testi.style.color="red";
	var xx =testi[0].firsChild;


	while (xx!=null) {
		if (xx.nodeName=='H3' ) { 
			xx.style.color="green";
		}
	 	xx = xx.nextSibling;
	}
}


Pour le style du noeud parent pas de soucis , mais la variable "xx" n'est pas initialisée , impossible de ciblé le(les) noeud(s) suivant(s).
message d'erreur : testi[0] has no properties .

La variable "testi" me renvoi juste le TagName du noeud parent et pourtant le style est applicable , je ne comprends pas pourquoi cela ne marcherais pas , si au premier abord un style est applicable sans que le noeud soit dotée d'une "class" ou d'un "id"
c'est qu'il est bien identifié par le navigateur .
L'
Le message d'erreur n'est pas trés surprenant .
Alors, comment faire pour atteindre a partir de celui-ci le(s) prochain(s) "noeuds" ?

GC

J'ai aussi tenté d'appliquer un id ou une class par le biais de la fonction pour ensuite me replacé sur le noeud, sans succés (ou trop maladroitement)
entre syntaxe javascript correcte et propriétés / methode pour le "node" je patauge .
Modifié par gcyrillus (16 Apr 2007 - 17:57)
Hello !

Cette ligne est a priori invalide :
var xx =testi[0].firsChild;
Il faudrait écrire :
var xx =testi.firs[b]t[/b]Child;
Modérateur
oups , autant pour moi .... faute de frappe , maintenant je comprends mieux pourquoi cela ne marche pas a chaque fois.

Dans l'ensemble j'ai resolu mes "problemes" , bien que je ne comprenne pas bien encore comment se servir de ces "propriétés ou methodes" correctement.

La difference entre javascript , dom , ecmascript est trés trés floue pour moi Smiley smile .

a cette occasion j'ai "bricolé" un menu deroulant visible a cette adresse :
http://gcyrillus.free.fr/decoupe-fr/vanilla/ je crois ne pas trop mal m'en sortir ... aprés avoir glané quelques infos supplementaire sur ce forum en plus de ce que je me sert comme reference la : http://fr.selfhtml.org/javascript/objets/node.htm

Voila , peut-etre y-at-il d'autre pages plus interessante ou complementaire .

Merci