2012-05-25 14 views
7
(function ($) { 
window.AppView = Backbone.View.extend({ 
    el: $("body"), 
    events: { 
    "click #add-friend": "showPrompt", 
    }, 
    showPrompt: function() { 
    var friend_name = prompt("Who is your friend?"); 
    } 
}); 
var appview = new AppView; 
})(jQuery); 
  1. Qualcuno mi può spiegare che cosa è el qui. È un elemento?
  2. Condivide la tesi el accettare oggetto, in caso affermativo posso passare la mia vista personalizzata oggetto in cui devono essere aggiunti il ​​pulsante o elementi ...

risposta

5
  1. Sì, è un elemento DOM.
  2. No, non è possibile passare un oggetto personalizzato. Specificare un elemento esistente o crearne uno dalle proprietà tagName, className, id e attributes della vista. Se non si specifica un elemento, il valore predefinito è un div

E 'tutto nel official documentation realtà ...

2

Alladnian risposto, ma vorrei aggiungere che quando si utilizza el si può fare uso di $el che è un oggetto jQuery memorizzato nella cache del tuo elemento di visualizzazione.

Quindi è sempre possibile passare solo il tag che si desidera utilizzare (per coerenza, brevità e flessibilità) e quindi fare riferimento come $el per utilizzarlo come un oggetto jQuery.

this.$el.addClass("active");