Puoi vedere la differenza tra $el
e el
nelle visualizzazioni Backbone.js?
risposta
Diciamo che si esegue questa operazione
var myel = this.el; // here what you have is the html element,
//you will be able to access(read/modify) the html
//properties of this element,
con questo
var my$el = this.$el; // you will have the element but
//with all of the functions that jQuery provides like,
//hide,show etc, its the equivalent of $('#myel').show();
//$('#myel').hide(); so this.$el keeps a reference to your
//element so you don't need to traverse the DOM to find the
// element every time you use it. with the performance benefits
//that this implies.
uno è l'elemento html e l'altro è l'oggetto jQuery dell'elemento.
È valido scrivere query su questo. $ el? Per esempio scrivi questo. $ El (". Some-class") per ottenere elementi con .some-class che è contenuto nella vista html. – MobileDream
sì è totalmente valido. –
Non per me, 'questo. $ El ('.classe')' mi dà $ el non è una funzione, devo usare find: 'this. $ El.find ('. Class')' –
E 'così tardi per rispondere, ma -> this.$el
è un riferimento all'elemento nel contesto di jQuery, tipicamente per l'uso con le cose come .html()
o .addClass()
, ecc Ad esempio, se si ha un div con id someDiv, e si imposta il el proprietà della vista Backbone, le seguenti affermazioni sono identiche:
this.$el.html() $("#someDiv").html() $(this.el).html()
this.el
è l'elemento DOM nativo, toccato da jQuery.
mu is too short è esattamente a destra:
this.$el = $(this.el);
ed è facile capire perché, cerca nella view's _setElement
function:
_setElement: function(el) { this.$el = el instanceof Backbone.$ ? el : Backbone.$(el); this.el = this.$el[0]; },
Questo assicura che el
è sempre un Elemento DOM e quello $el
è sempre un oggetto jQuery di esso. Così vale quanto segue, anche se ho usato un oggetto jQuery come opzione el
o la proprietà:
var myView = new Backbone.View({ el: $('.selector') });
// or
var MyView = Backbone.View.extend({
el: $('.selector')
});
Che cosa è un oggetto jQuery cache?
È un oggetto jQuery mantenuto all'interno di una variabile per scopi di riutilizzo. Evita l'operazione costosa di trovare l'elemento con qualcosa come $(selector)
ogni volta.
Ecco un esempio:
render: function() {
this.$el.html(this.template(/* ...snip... */));
// this is caching a jQuery object
this.$myCachedObject = this.$('.selector');
},
onExampleEvent: function(e) {
// avoids $('.selector') here and on any sub-sequent example events.
this.$myCachedObject.toggleClass('example');
}
vedere una extensive answer ho scritto di saperne di più.
In breve, el consente di accedere agli elementi DOM HTML, quindi è possibile fare riferimento e accedervi, mentre $ el è jQuery wrapper around el.
$ el non solo fornisce accesso a un particolare elemento DOM, inoltre funge da selettore jQuery e si ha il privilegio di utilizzare le funzioni della libreria jQuery come show(), hide(), ecc. Sul particolare elemento DOM.
È in termini di jQuery e la domanda riguarda 'backbone.js' –
- 1. eventi backbone.js ed el
- 2. Differenza tra JSP EL, JSF EL e Unified EL
- 3. backbone.js e el attribuiscono
- 4. Backbone.js render(). El Uso
- 5. Cosa fa il 'el' in view.render(). El?
- 6. Backbone.js: comunicazione tra le viste
- 7. Qual è la differenza tra OpenCV.NET, OpenCVSharp ed EmguCV?
- 8. collegamento di viste backbone.js agli elementi esistenti e inserimento di EL nel DOM
- 9. Supporto EL di EL Apache per la primavera 3
- 10. Confronto stringhe in EL
- 11. backbone remove view cancella el
- 12. Qual è la differenza tra volatile ed esterno?
- 13. Qual è la differenza tra scalabilità ed elasticità?
- 14. Qual è la differenza tra modulo HTTP ed esprimere modle
- 15. Qual è la differenza tra contesto di interruzione ed eccezione?
- 16. In ember.js, qual è la differenza tra mixin ed extend?
- 17. Qual è la differenza tra execl ed execv?
- 18. In Hybris, qual è la differenza tra modulegen ed extgen?
- 19. Qual è la differenza tra risorsa ed endpoint?
- 20. Qual è la differenza tra trigger ed eventi in backbone?
- 21. Qual è la differenza tra mixin ed ereditarietà?
- 22. Qual è la differenza tra nohup ed e commerciale
- 23. Qual è la differenza tra px, em ed ex?
- 24. Qual è la differenza tra spawn ed exec?
- 25. Qual è la differenza tra Transaction Manager ed Entity Manager
- 26. Qual è la differenza semantica tra ERANGE ed EOVERFLOW?
- 27. Qual è la differenza tra Lucene ed Elasticsearch
- 28. Qual è la differenza tra Executor ed ExecutorService?
- 29. Qual è la differenza tra Amazon AMI ed EBS snapshot
- 30. EL supporta metodi sovraccaricati?
L'hai controllato nella [documentazione] (http://backbonejs.org/#View-el)? – nemesv
possibile duplicato di [Perché una variabile JavaScript dovrebbe iniziare con un segno di dollaro?] (Http: // StackOverflow.it/questions/205853/why-would-a-javascript-variable-start-with-a-dollar-sign) – Quentin
Non ho capito cosa significa questa frase "oggetto jQuery memorizzato nella cache" per $ sl –