Che sul sito di jquery non ne parlano e non ci sono esempi, ma che basta provare se funziona okNon conosco la programmazione ad oggetti (sempre che di questo si tratti) ed essendo autodidatta, il mio credo è se funziona va bene altrimenti noQuello che non avevo capito nel mio esempio è che this, quando viene associato un metodo a un evento, non rappresenta l'oggetto, ma il contesto a cui viene attaccato l'evento. Pertanto non è possibile utilizzare altri metodi tramite l'uso di this.altroMetodo, perché giustamente non viene trovato. La soluzione è, usando bind, specificare il contesto di this, così:
$("body").on("click", this.mioMetodo.bind(this));
e dentro a mioMetodo posso utilizzare this come referenza dell'oggetto.
Inoltre ho visto anche bypassare questo "problema" utilizzando una variabile all'interno della funzione che rappresenta this. Così:
Quale dici sia la soluzione migliore?codice:function People (nome){ this.nome = nome; var that = this; $("body").on("click", function(){ console.log(that.nome); }); } var pippo = new People("pippo");
grazie!!![]()