2012-04-30 7 views

risposta

17

Rimuovere il var da dentro la funzione.

$("#ma1").click(function() { 
     one = 1; 
    }) 
+6

di estendere il motivo per cui questo funziona, quando si è usato 'var' all'interno della funzione, è stata creata una nuova e distinta variabile locale. Rimuovendo il 'var', stai essenzialmente dicendo che vuoi cercare la catena per una variabile precedentemente definita (in questo caso la' globale'). – Moses

+0

@Moses: Grazie, è giusto. –

+0

Grazie per il tuo aiuto, Rocket. Questo mi ha salvato. – SnarkyDTheman

11

Se si vuole fare una variabile globale associarlo al window oggetto

window.one = 1; 
10
var one;//define outside closure 

    $("#ma1").click(function() { 
     one = 1; //removed var 
    }) 
    $("body").click(function(e) { 
     $('#status').html("This is 'one': "+one); 
    }) 
Problemi correlati