2012-03-26 17 views
6

Sto leggendo Javascript e JQuery, The Missing Manual

e iniziare con questo frammento:

$(document).ready(function(){}); 

so che function(){} è una funzione anonima, e che il documento è un oggetto con proprietà che posso imposta/leggi, e che ready() è una funzione JQuery definita nella libreria, ma non so a cosa serve il resto della sintassi e non è spiegata nel libro.

In particolare,

$(document) 

qualcuno può spiegare che cosa questo fa o punto me un link? Inoltre, qualcuno ha detto che puoi identificare JQuery solo da questo, è vero?

+5

Dovresti provare google, ti indicherà http://api.jquery.com/ready/ – jrummell

+1

'$' è un riferimento a 'window.jQuery', che è una funzione che è sovraccaricata con vari tipi di comportamento a seconda di cosa è passato. –

+1

Non credo che qualcuno che voglia abbattere il coraggio di affermazioni che la maggior parte delle persone trascura meriti i downvotes ... – jbabey

risposta

4

$(document) avvolge un'istanza jQuery intorno all'oggetto document. ($ è solo un alias per jQuery.) Quindi il valore restituito di $(document) è un'istanza di jQuery, che ha una funzione ready su di esso.

2

Si è sinonimo per la funzione jquery():

http://api.jquery.com/jQuery/

+0

Quindi quel documento è l'argomento di jquery() e ready() agisce sul tipo restituito da jquery()? È corretto? –

+0

@GuyMontag: il documento è un argomento di jQuery() e ready() è un gestore di eventi (un metodo di jQuery) che accetta una funzione di callback come parametro. –

-3

$ è solo un selettore per jquery. Stai praticamente dicendo che quello che segue dopo "$" fa parte della libreria jquery.

Fare attenzione perché alcune altre librerie javascript utilizzano lo stesso selettore.

+3

Non chiamerei "$" un "selettore". –

+1

my bad, costruttore –

+1

Inoltre non chiamerei "$" un costruttore. –

1

$ è una scorciatoia per l'oggetto JQuery. Tutti i metodi nella libreria jQuery fanno parte dell'oggetto jQuery.

$(selector) è lo stesso di scrittura 'jQuery (selettore) `

+0

la funzione JQuery è più accurata .... poiché è il tipo di oggetto. –

1

il $ prima di dichiarazioni jQuery è di distinguere tra standard di javascript e jquery. Ma anche altri framework possono utilizzare il simbolo del dollaro, quindi a volte vedrai jQuery (documento) per non entrare in conflitto. Può anche essere impostato su qualsiasi cosa, persino $ jq, ecc. Tutto ciò che sta facendo è dire al tuo codice di usare le funzioni framework invece del javascript standard.

1

$ è un alias (a breve a mano) per la variabile jQuery che è l'oggetto coperta che memorizza tutte le funzioni jQuery.

$(document) è prendendo il corrente window.document (la parte window. è spesso omesso quando si accede proprietà della finestra) e passando al costruttore jQuery $(), e quindi collegare un gestore di eventi all'evento ready, che esegue la funzione anonima passata come richiama.

+0

Secondo http://api.jquery.com/jQuery/ jQuery è una funzione, sei sicuro che sia un oggetto? –

+0

In javascript una funzione è anche un oggetto, un [oggetto funzione] (https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Function). –

+0

@GuyMontag tutto in javascript è un oggetto. – jbabey