Qual é o significado do símbolo $ no jQuery?


123

O que significa o $sinal no jQuery?


você poderia fazer o título um pouquinho mais descritivo, em vez de apenas olhar como um par de tags de categoria
Michael Paulukonis

20
é uma ótima pergunta para jquery noobs como eu. Eu juntei algumas páginas jquery cortando e colando na internet, e foi a primeira pergunta que eu tive sobre o que estava fazendo.
Mark Harrison

Respostas:


138

O objeto jQuery :)

Na documentação do jQuery:

Por padrão, o jQuery usa "$" como um atalho para "jQuery"

Então, usando $("#id") ou jQuery("#id")é o mesmo.


Oi, @Andrea, eu não sei se estou fazendo a pergunta correta ou não, sou novo no jQuery. Podemos substituir esse $ por qualquer outro símbolo? e se possível, como?
Hulk

@ Hulk você pode usar noConflit()para substituí-lo.
super cool

44

Estranho, mas verdadeiro, você pode usar "$" como um nome de função em JavaScript. É uma abreviação para jQuery (). Que você pode usar se quiser. O jQuery pode ser executado no modo de compatibilidade se outra biblioteca já estiver usando o $. Basta usar jQuery.noConflict (). $ é comumente usado como uma função seletora em JS.

No jQuery, a função $ faz muito mais do que selecionar algumas coisas.

  1. Você pode passar um seletor para obter uma coleção de elementos correspondentes do DOM.
  2. Você pode passar uma função para executar quando o documento estiver pronto (semelhante a body.onload (), mas melhor).
  3. Você pode passar uma string de HTML para se transformar em um elemento DOM que você pode injetar no documento.
  4. Você pode transmitir um elemento DOM ou elementos que deseja agrupar com o objeto jQuery.

Aqui está a documentação: https://api.jquery.com/jQuery/


7
Sabe, essa REALMENTE deve ser a resposta certa para essa pergunta ... Não acredito que todas essas respostas engraçadas receberam todos os votos positivos.
Reedvoid

1
Concorde com os comentários de reedvoid. É uma reflexão sobre o estado das coisas na programação Javascript. Dito isto, o link mais preciso agora que responde à pergunta é api.jquery.com/jQuery
Sunny

Se $ é uma função, como estamos chamando o método noConflict ()? Isso seria possível se $ fosse um objeto, não uma função.
maverick

1
@ dk49 No JavaScript, as funções também podem ter propriedades. Tente isto: function Person () {}; Person.city = 'Missoula'; console.log (Person.city)
Lance Fisher

Para obter mais evidências, tente typeof $qual será a "Função". ;)
Lance Fisher

34

É açúcar sintático . Não é específico apenas para jQuery; outras bibliotecas também o usam. Você pode procurar um artigo completo sobre o uso do cifrão no JavaScript aqui .


5
Gostei do termo açúcar sintático . Obrigado por isso :)
Ravi Dhoriyaツ

4
Como isso é uma resposta? Com isso, aprendi que o sinal '$' no jQuery significa "açúcar sintático". E o artigo vinculado fala longamente sobre os comos e o porquê, sem responder de forma concisa. A próxima resposta de @andrea faz o trabalho em três palavras.
Lorenzog 6/11/15

Eu acho que o OP queria saber por que é que o símbolo $ escolhido para representar a biblioteca, não sobre o que realmente significa, o que é meio óbvio e documentado
Elzo Valugi

esse link não funciona mais, o que você disse explica em detalhes $ #
user734028

@ user734028 eu mudei o link para um cache, verifique agora
Elzo Valugi

30

Como dito em outras respostas, $ é um atalho para a função jQuery.

Algumas bibliotecas JavaScript usam $ too (exemplo: prototype). Para evitar conflitos com essas outras bibliotecas, o jQuery fornece a função jQuery.noConflict (). Chamando essa função, o controle da variável $ volta para a outra biblioteca que a implementou primeiro. Fazendo isso para usar o jQuery, você não pode mais fazer isso $ ('div.someClass'); em vez disso, jQuery ('div.someClass').

Como alternativa, você pode fazer isso:

jQuery.noConflict();

jQuery.ready(function($) {
   // use $ for jQuery
}

//use $ for the other library

Ao escrever plugins para evitar problemas com o uso de noConflict, você pode passar 'jQuery' para uma função:

function($) {

//use $ writing your plugin

}(jQuery)


7

É curto para jQuery. O objeto em que vivem todas as funcionalidades do jQuery.


5

O $ é açúcar sintático como o @Elzo mencionado. Porém, ninguém respondeu à sua pergunta. O $ é uma abreviação no jQuery window.jQuery, para que você não precise digitá-lo todas as vezes.


4

$ é apenas outra variável. No caso do jQuery, isso faz referência à função jQuery.




1

Veja o arquivo da biblioteca jQuery.

// Exponha os identificadores jQuery e $.

if ( typeof noGlobal === strundefined ) {
    window.jQuery = window.$ = jQuery;
}

Global $ aponta para jQuery.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.