Pra que que serve um container de funções no Jquery?

5 respostas
xxmayconxx

==========================exemplo:código em um container

$(“span”).click(function()
{

$(“span”).css(“background”,“ff00ff”);

});

==========================fora de um container

$(“span”).css(“background”,“ff00ff”);

esses dois códigos tem o mesmo efeito, quero saber qual a diferença entre os dois.E por que no que tem o container a função recebe um $ como parâmetro.Valeu

5 Respostas

nandooliveira

Click é uma função do jquery que captura o evento de clicar.

Ou seja, no código:

$("span").click(function() { $("span").css("background","ff00ff"); });

A instrução $(“span”).css(“background”,“ff00ff”); só será executada quando você clicar em algum elemento span.

xxmayconxx

Opa, foi mal, coloquei o código errado, o que está macima compreendo que possui um evento onclick, a pergunta é referente a esse aqui

$(function($)
{

$(“span”).css(“background”,“ff00ff”);

});

ese dois tem o mesmo efeito e não possuem eventos para ativa-los, são executado assim qeu a página é carregada, qua a diferença entre os dois?E por que o acima recebe um cifrão como parâmetro?

$(“span”).css(“background”,“ff00ff”);

W

Você passa $ como argumento neste caso para que esse símbolo no seu código possa ser utilizado sem interferência de outras bibliotecas ou coisa do tipo.

O jQuery não é o único que faz uso do $, portanto, se você estiver usando outra biblioteca que também usa esse símbolo, você pode manter a integridade das suas variáveis através dessa função, que é como se fosse o $(document).ready(). Então, dentro dessa function, tudo que você usar o símbolo $ será exclusividade do jQuery.

nandooliveira
Só completando...
$(document).ready(function(){

// Tudo que estiver aqui dentro é executado assim que o DOM estiver carregado...

});
e... $(); é uma alias (apelido) para $(document).ready();
$(function()

//sendo esta um alias... tudo que tiver aqui dentro também será carregado somente quando o DOM estver pronto

);

A diferença para usar $("span").css("background","ff00ff"); diretamente é que ele não irá esperar o carregamento do DOM.

xxmayconxx

Beleza, entendi, valeu!

Criado 21 de março de 2011
Ultima resposta 22 de mar. de 2011
Respostas 5
Participantes 3