2011-02-01 7 views
11

Capisco la differenza tra Live e Bind ma quando dovrei usare use .bind() su un metodo di evento 'standard' come mostrato di seguito.In JQuery quando dovresti usare .bind() su .click() - o qualsiasi altro evento dato?

Esistono differenze chiave nel modo in cui funzionano queste due chiamate?

$('.clickme').bind('click', function() { 
    // Handler called. 
}); 

$('.clickme').click(function() { 
    // Handler called. 
}); 
+1

quelli sono gli stessi per quanto riguarda l'implementazione, solo una scorciatoia –

risposta

2

Sono uguali. Vedi here

+0

Sì proprio! la domanda è Quando dovremmo usarlo ..? tardi ma necessario. –

0

Uso i metodi espliciti quando disponibili. Uso il binding quando un metodo non è disponibile come per window.onbeforeunload

L'altro tempo per utilizzare bind è se si stanno sviluppando e si passa da "live" a "bind".

4

a "legare" è possibile utilizzare più eventi

$('#foo').bind('mouseenter mouseleave', function() { 
    $(this).toggleClass('entered'); 
}); 
0

uso .bind quando si desidera associare a "event.namespace"

Actaully quasi sempre utilizzare .bind e quasi sempre utilizzare gli spazi dei nomi.

+0

@ Raynos - qualche motivo speciale per questo? qual è il vantaggio di utilizzare solo spazi dei nomi? – dopatraman

+0

@codeninja '.unbind (". Namespace ")' la possibilità di separare tutti gli eventi per uno spazio dei nomi su un nodo è oro. – Raynos

Problemi correlati