Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Un dilema Javascript

    Ciao
    ho un stranno problema con javascript che non riesco a capire. prima vi posto il codice:
    Codice PHP:
        var disp =new Array('Align left','Align right','Align top','Align bottom');//voci da visualizzare
        
    var action = new Array('left','right','top','bottom');
        
        for (var 
    0disp.lengthi++)
        {  
            var 
    tmp document.createElement('DIV');
            
    tmp.className 'ddmenu2';
            
    tmp.style.fontWeight "normal";
            
    tmp.innerHTML disp[i];
            var 
    act=action[i]; 
            
    tmp.onclick=function(e){ alert(act);}; //valore stranno :confused: 
            
    amenu.appendChild(tmp);
        } 
    il problema sta nel fatto che quando clicco su uno dei div, (tmp) che creo il valore di act è sempre 'bottom', cioe l'ultimo. se creo 4 div, ogni div deve su click deve scattenare un alert(left'/'right'/'top'/'bottom') a seconda del ordine del div su cui clicko. Qualcuno sa capire perche succede questo?
    Grazie

  2. #2

  3. #3
    grazie della risposta
    effettivamente uso un trucco del genere simile alla prima soluzione (creo un nuovo attributo al elemento).

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    il consiglio pero' e' di evitare gli expando
    per vari motivi, tra cui il memory leaking di IE

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.