11548 sujets

JavaScript, DOM et API Web HTML5

EDIT : J'ai céssé de cherche une solution à ce probleme et finalement abandonné la fonction pour faire ce que je veux en changeant les propriétés une à une. C'est moins élégant mais ça passe sous opera. (document.getElementById(element1).style.display='none'; document.getElementById(element2).style.display='none'; ....)
------
bonjour,

Je cherche mais je n'arrive pas a resoudre ce problème.
Une fonction marche très bien avec firefox et konqueror mais genère une erreur avec opera.


function off()
{
	document.getElementById('consigne').style.display='none';
	hexamap_map = document.getElementById('hexamap').childNodes;
	for (var x= 0; x < hexamap_map.length-1; x++)
	{
		nom = hexamap_map[x].getAttribute('id');
		nom = "p_resum" + nom.substring(10, nom.length);
		document.getElementById(nom).style.display='none'; 
	}
}

La console javascript opera me donne :

message: Statement on line 25: Type mismatch (usually a non-object value used where an object is required)
Backtrace:
  Line 25 of linked script caracteristiques_map.js
    nom = hexamap_map[x].getAttribute("id");


enversion complète :

 http://127.0.0.1/sitecom/sites(.com)/caracteristiques/caracteristiques2.php
 
Event thread: mouseover
Error:
name: TypeError
message: Statement on line 25: Type mismatch (usually a non-object value used where an object is required)
Backtrace:
  Line 25 of linked script  http://127.0.0.1/sitecom/sites(.com)/js/caracteristiques_map.js
 
    nom = hexamap_map[x].getAttribute("id");
  Line 10 of linked script  http://127.0.0.1/sitecom/sites(.com)/js/caracteristiques_map.js
 
    off();
  At unknown location
    [statement source code not available]

Modifié par ___seb (09 Dec 2005 - 10:56)
ah oui pardon, pour le [ i] ça ne m'était même pas venu à l'idée. C'est corrigé.

J'ai donc essayé de spécifier des objets du bon type mais sans succes.

		var nom = new String();
		var nomobj = new Object();
		nomobj = hexamap_map[x];
		nom = nomobj.getAttribute('id');
		nom = "p_resum" + nom.substring(10, nom.length);


La ligne posant problème reste la même (nom = nomobj.getAttribute('id');) alors que "DOMString The Attr value as a string, or the empty string if that attribute does not have a specified or default value" Smiley ohwell
Modifié par ___seb (08 Dec 2005 - 19:40)