Ho risolto prendendo spunto dal suggerimento di mega69... Posto il codice esemplificativo della soluzione:
Grazie a tutti per l'interessamento...codice:__oggetti = new Array(); function retrieveObject(arrayToSearchIn, attributeName, attributeValue) { var i = 0; while (i < arrayToSearchIn.length && eval("arrayToSearchIn[i]." + attributeName) != attributeValue) ; if (eval("arrayToSearchIn[i]." + attributeName) == attributeValue) return arrayToSearchIn[i]; else return null; } function nomeOggetto() { this.nomeVariabile = null; this.altroOggetto = null; this.oggettoUno = null; } nomeOggetto.prototype = { creaOggetto = function(altroOggetto, valoreVariabile) { this.nome = altroOggetto.getAttribute("id") + "aaa"; // nome generato utilizzando l'id di un parametro __oggetti.push(this); this.altroOggetto = altroOggetto; this.nomeVariabile = valoreVariabile this.oggettoUno = document.createElement("img"); // creazione di altri oggetti utilizzando document.createElement this.oggettoUno.genitore = retrieveObject(__oggetti, "nome", this.altroOggetto.getAttribute("id") + "aaa"); this.oggettoUno.onmousedown = function() { this.oggettoUno.genitore.notificaValoreVariabile; } altroOggetto.appendChild(oggettoUno); }, notificaValoreVariabile = function() { alert("Valore di nomeVariabile = " + this.nomeVariabile); } } onload = function() { tmp = new nomeOggetto(); tmp.creaOggetto(); }

Rispondi quotando