ho un problema con un addEventListener, non so se questa è la sezione giusta per chiedere, spero di si ^^'
a spiegare il problema a voce di metterei righe e righe e probabilmente risulterebbe poco chiaro, per cui lascerò che il codice parli per me :P
in pratica, sto creando un userscript che, in una data pagina, cerca un determinato div (che acquisisce nella variabile 'node') e fa questo:
codice:
node.addEventListener('click', execute, false);
function execute()
{
input = document.createElement('div');
//...varia roba dentro questo 'input', tra cui
filler1 = document.createElement('div');
//vi risparmio le specifiche css di 'filler1', basti sapere che tra le altre cose
filler1.addEventListener('click', rotate, false);
function rotate() {
//vi risparmio anche questa funzione, diciamo a titolo di esempio che si tratti di un semplice
alert('ciao');
}
input.appendChild(filler1);
}
il problema è che questo secondo addEventListener blocca tutto il codice. Questo succede per qualunque funzione io tenti di richiamare, con tutte le possibili combinazioni di true e false, a meno che nn si tratti di execute: filler1.addEventListener('click', execute, false); infatti funziona...
qualcuno può spiegarmi l'arcano? ha qualcosa a che vedere con il fatto che rotate() sia una funzione 'locale' in quanto dichiarata all'interno di execute()? ...però anche l'EventListener è 'locale'... senza contare che avrei grossi problemi a utilizzare una funzione globale in quanto devo fargli eseguire delle operazioni su variabili locali, e con l'EventListener nn riesco a passare parametri alle funzioni...